4 votos

AWS de Amazon EC2 - sin contraseña SSH inicio de sesión para usuarios no root usando PEM pares de claves

Tenemos un par de clusters que se ejecutan en AWS (HAProxy/Solr, PGPool/PostgreSQL) y hemos scripts de configuración para permitir a los nuevos esclavos instancias de auto-incluido en los clusters mediante la actualización de su IPs a los archivos de configuración que se celebró en el S3, entonces SSHing para el maestro ejemplo de ellos falta para descargar la versión revisada de la configuración y reiniciar el servicio. Todo trabaja muy bien, pero en las pruebas que estamos usando nuestro maestro pem para SSH lo que significa que necesita ser almacenado en una instancia. No es buena.

Quiero que un usuario no-root que puede utilizar AWS par de claves que se han sudo acceso para ejecutar la descarga de configuración y reiniciar secuencias de comandos, pero nada más. rbash parece ser el camino a seguir, pero entiendo que esto puede ser inseguro a menos que la configuración correctamente.

Así que lo de los agujeros de seguridad hay en este enfoque:

  • Nueva AWS par de claves creado para el usuario.pem (no realmente se llama 'usuario')
  • Nuevo usuario de instancias: usuario
  • Clave pública del usuario en ~usuario/.ssh/authorized_keys (por la crear nueva instancia con el usuario.pem, y copia de /root/.ssh/authorized_keys)
  • La clave privada para el usuario ~usuario/.ssh/usuario.pem
  • 'usuario', ha shell de inicio de sesión de /home/usuario/bin/rbash
  • ~usuario/bin/ contiene enlaces simbólicos a /bin/rbash y /usr/bin/sudo
  • /etc/sudoers tiene entrada de usuario " ALL=(root) NOPASSWD: [ruta de acceso a script]
  • ~usuario/.bashrc conjuntos de PATHde acceso /home/usuario/bin/ sólo
  • ~usuario/.inputrc ha 'set desactivar-la terminación en " a evitar doble tabulación de 'sudo /' a encontrar rutas de acceso.
  • ~usuario/ -R es propiedad de root con acceso de sólo lectura para el usuario, excepto para ~usuario/.ssh que tiene acceso de escritura para usuario (por escrito known_hosts), y ~usuario/bin/* +x
  • Inter-ejemplo de comunicación utiliza 'ssh-o StrictHostKeyChecking=no-me ~usuario/.ssh/usuario.pem usuario@[host] sudo [scriptname]'

Cualquier idea será bienvenida.

Marca...

1voto

pmcastillo Puntos 20

Ok, no hay respuestas diciendo que esto es muy expuestos en forma alguna, excepto por el hecho de que si alguien se mete en el inicio de sesión de usuario, conseguir que el usuario de la clave PEM. Que no deben obtener en cualquier otro lugar*.

Se está trabajando con el enfoque anterior.

*Costumbre advertencias se aplican

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: