¿Cómo puedo administrar mejor las contraseñas de root para muchos servidores?

6

Digamos que tengo dos bastidores con aproximadamente 40 servidores nix en ellos. No quiero configurar todas las contraseñas de usuario root, ¿no? Si no, ¿cómo administra y mantiene todas las contraseñas?

¿Es un servidor LDAP una opción viable para usar con inicios de sesión de raíz?

    
pregunta DiverseAndRemote.com 26.08.2013 - 18:27
fuente

7 respuestas

5

Aquí hay algunas opciones, cada una con sus propios aspectos de seguridad e inseguridad:

  • Use una herramienta como KeePass o LastPass (ambos son bastante buenos)
  • Utilice las claves SSH exclusivamente (elimine la contraseña de root por completo y desactive la autenticación de contraseña)
  • Use un patrón de contraseña no reversible, por ejemplo: SHA1 (hostip + secret + some_iterator)

De esas opciones, me gustan más las claves SSH si estás en un entorno en el que tiene sentido. Porque, honestamente, ¿por qué tener contraseñas de root si no es necesario?

Mi siguiente favorito es keepass y lastpass. Las contraseñas aleatorias son mejores que las contraseñas no aleatorias

La opción de patrón de contraseña es categóricamente menos segura que las otras opciones, pero ciertamente es mejor que usar contraseñas con un patrón fácilmente discernible.

    
respondido por el tylerl 26.08.2013 - 21:01
fuente
4

Solo para agregar a otras respuestas, una distinción importante aquí es la cantidad de personas que necesitan acceso a estas contraseñas. Si solo es uno (tú mismo), un administrador de contraseñas es probablemente la mejor solución.

Sin embargo, cuando tiene varias personas que utilizan cuentas genéricas con privilegios (como la cuenta raíz en * nix), es importante tener cosas como el seguimiento de quién tuvo acceso a qué y cuándo, y también para permitir la entrega de contraseñas. temporalmente y luego cambió fácilmente.

Para las soluciones como CyberArk (que @ mark-c-wallace se menciona en los comentarios) son una buena idea.

    
respondido por el Rоry McCune 26.08.2013 - 21:34
fuente
3
  

No quiero configurar todas las contraseñas de usuario root, ¿no?

no, usted no :) y desea deshabilitar root-ssh-logins también y usar un inicio de sesión de administrador que tenga derechos de sudo para tareas de uso frecuente a través de ssh y un archivo de claves protegido por contraseña.

con un rack de 40 servidores, debe verificar herramientas de administración como Puppet que cree todos los usuarios necesarios, inicio de sesión, ssh-key-management, configuraciones, etc.

  

Si no, ¿cómo gestionas y te mantienes al día con todas las contraseñas?

use contraseñas seguras y cosas como keepass o el último paso mencionado. No utilice las cajas fuertes de contraseñas en línea.

cuando tenga habilitadas las teclas ssh +, necesitará contraseñas no muy a menudo, excepto por su archivo ssh-key y ciertas tareas raíz, pero tiene su pw-manager abierto y solo c & p las contraseñas a la intro consola-app. Si usa Linux, insertar una contraseña en un terminal es solo 3 clics; bastante cómodo para mí.

  

¿Es un servidor LDAP una opción viable para usar con inicios de sesión de raíz?

No permitiría inicios de sesión de raíz excepto desde una consola local. ldap es bueno para las cuentas, pero aún así tendría 1 cuenta local para iniciar sesión si falla ldap o de lo contrario no está disponible. y la configuración a través de pam'n'stuff es 8 fue hace al menos 3 años) gran PITA

    
respondido por el that guy from over there 26.08.2013 - 20:53
fuente
2

Hay una serie de administradores de contraseñas que están diseñados solo para este propósito. Solo uso Keychain que viene con OSx, pero también escuché cosas buenas sobre LastPass .

Aquí hay un enlace que abarca varios administradores de contraseñas populares. .

    
respondido por el Abe Miessler 26.08.2013 - 18:32
fuente
1

Ampliando una respuesta de tylerl tengo lo siguiente:

  1. deshabilitar contraseña de root - no se requiere contraseña
  2. inhabilitar el inicio de sesión de root desde ssh
  3. use LDAP para administrar las otras cuentas de usuario
  4. agregue usuarios al grupo sudoers según sea necesario.

Mi pensamiento ahora es que mis servidores están bloqueados en una jaula y la única forma de acceder a la cuenta de root es desbloquear la jaula y usar el kvm. En realidad, no importa si todas las contraseñas de root están en blanco o simplemente configuradas. lo mismo

    
respondido por el DiverseAndRemote.com 28.08.2013 - 17:27
fuente
0

Puede usar un sistema de administración basado en la empresa, por ejemplo, Puppet para la gestión de contraseñas . Keepass para una copia local, pero sería demasiado complejo. Es mucho más fácil usar sshkeys y Puppet si me preguntas. Si el objetivo es asegurar la capacidad de INICIAR SESIÓN, esto es tan simple como configurar reglas en la máquina local para SOLO CONFIAN EN SU PROPIO NETBLOCK , mientras se permite la administración de OOB (fuera de banda) en UNO, y luego yendo desde allí. Esto permite solo UN punto de entrada en lugar de múltiples puntos.

Por ejemplo, suponga que está hablando de decir a / 25 en su rack. NADIE del mundo exterior necesita iniciar sesión en esto, excepto di tuyo / admin. Puede instalar reglas en TODAS las máquinas para bloquear todas las conexiones a servicios a los que nadie del mundo exterior debería acceder (RDP, SSH, telnet, lo que quiera bloquear), tener un servidor utilizado como proxy dedicado para conectarse a los demás. Ese servidor tendría que estar protegido EXTREMADAMENTE, ya que contendría sshkeys. Pero incluso eso también puede ser bloqueado, con una tarjeta ethernet de 10 $ para la gestión de OOB.

Hay muchas formas de proteger y administrar, pero todo depende de cuánto tiempo y dinero quiera invertir haciendo las cosas.

    
respondido por el munkeyoto 26.08.2013 - 21:49
fuente
-1

Utilice las claves SSH. Simplemente hay una alternativa, que es la razón por la que no encontrará ninguna otra solución utilizada en los centros de datos.

Crear clave:

ssh-keygen -t rsa -b 4096

Copiar clave al servidor:

ssh-copy-id <user>@<servername-or-ip>

Finalice y asegure el servidor:

ssh en la máquina, y edite /etc/ssh/sshd_config para que PermitRootLogin se establezca en without-password en lugar de yes .

Si otras personas necesitan acceso a ssh basado en contraseñas, dales una segunda cuenta con la que puedan conectarse y luego les permite usar sudo.

    
respondido por el sjas 12.08.2015 - 03:38
fuente

Lea otras preguntas en las etiquetas