Contraté a un consultor remoto para ajustar mis servidores. Ahora, no estoy 100% seguro de darle la contraseña de root y permitirle hacer lo que quiera en los servidores. Idealmente, quiero ver todo lo que está haciendo en mis servidores (en tiempo real) y también encontrar una manera de no compartir la contraseña de root con él.
¿Existen algunas prácticas recomendadas para permitir que un consultor remoto acceda a su servidor?
EDITAR: Para aclarar, quiero hacer algún tipo de pantalla compartida con el consultor. ¿Hay algún método por el cual sus comandos se tunelen a través de mi cuenta sin que él obtenga ninguna contraseña?
PD: mis servidores están en Ubuntu 9.10
Respuestas:
Puede dejar que se conecte con una cuenta normal y luego monitorear su sesión SSH . La solución basada en pantalla es la mejor en mi opinión y le permitirá hacer "emparejar" la administración del sistema. Por ejemplo, podría escribir los comandos sudo y usted escribiría la contraseña en caso de que sea necesaria.
PD: si usa la pantalla, no significa que no deba usar también sudosh2 u otras soluciones.
fuente
En lugar de otorgarle la contraseña de root, use sudo.
Si desea ver todo lo que está haciendo en tiempo real como superusuario, consulte sudosh2 . De los documentos:
"Todas las pulsaciones de teclas" incluye pulsaciones de teclas de los espacios de retroceso, eliminar caracteres, la "palabra de borrado" de BASH, etc. Puede ver los errores tipográficos y las correcciones vergonzosas, etc.
sudosh admitirá syslog, y puede enviar los registros a un servidor remoto de syslog. Esto aseguraría que el usuario no pueda borrar todas las copias de los registros de auditoría.
Tenga en cuenta que el proyecto original sudosh (la primera versión) ha sido abandonado por su autor. sudosh2 está vivo y bien.
fuente
Realmente depende del nivel de acceso que quieras darle. En primer lugar, nunca habilitaría los inicios de sesión remotos de root. Solo las cuentas "normales" deben tener acceso remoto, luego configure sudo para lo que esa persona necesite.
fuente
sudo
acceso a ciertos comandos, por ejemploPrimero, debe tener objetivos claramente definidos para lo que le gustaría que hiciera. Una vez que se definen esos objetivos, puede otorgarle el nivel de acceso requerido para lograr esos objetivos.
Es como dejar mi auto en el taller de reparaciones y decirles que "lo arreglen". Lo siguiente que sabes es que tengo una factura por miles de dólares y han hecho cosas que no quería y no pedí.
fuente
Estoy agregando otra respuesta diferente en respuesta a su actualización.
Usando la pantalla GNU, puede compartir una pantalla con otro usuario. Esto significa que puede escribir comandos, y usted ve todo lo que escribe. Puedes escribir comandos y él puede ver lo que escribes. Cuando se le solicita una contraseña, puede escribir la contraseña, pero el contenido de la contraseña no se imprime en la pantalla (Nota: aunque el texto no se imprime en la pantalla, no estoy seguro de si el otro usuario podría obtener acceso a sus pulsaciones de teclas de otra manera, o tener acceso al búfer de pulsaciones de teclas, etc.).
Mas información en http://www.debian-administration.org/article/Using_GNU_screen%27s_multiuser_feature_for_remote_support
Otra sugerencia: cambie la contraseña de root por una contraseña temporal de antemano. Cuando se haya ido, restaure la contraseña de root a la contraseña original.
fuente
Si solo permite el acceso de clave pública a su servidor pero no puede iniciar sesión con contraseña, puede revocar el derecho de acceso en cualquier momento que desee quitando la clave que le dio al consultor.
Una vez en la máquina, la pantalla GNU debería proporcionar todas las funciones deseadas, como sugirió Cristian Ciupitu. Si desea agregar mayor comodidad, sudosh2 podría ayudarlo, pero su historial de proyectiles y la copia impresa de la pantalla podrían ayudarlo a reproducir los comandos más adelante ...
fuente