GNU/Linux >> Tutoriales Linux >  >> Linux

¿Es una buena idea una ubicación central para las claves_autorizadas?

Solución 1:

Todos los archivos de claves se pueden centralizar en el mismo directorio y no mezclar en el mismo archivo.

Simplemente configure el sshd_config archivo como este:

AuthorizedKeysFile  /etc/ssh/authorized_keys/%u

En su servidor:

  • las claves www-data estarán en /etc/ssh/authorized_keys/www-data
  • las claves raíz estarán en /etc/ssh/authorized_keys/root

En cuanto a los derechos de acceso, estas configuraciones son aceptadas por sshd:

/etc/ssh/authorized_keys es propiedad de root:root y tiene el modo 755. Los archivos clave son propiedad de root:root y tiene el modo 644.

Es posible que funcionen otros modos, pero no los he probado.

Solución 2:

En términos generales, no haría lo que sugieres. Rompe suposiciones comunes (como ~/.ssh/authorized_keys trabajando para sus usuarios e introduce problemas que ya ha mencionado en su pregunta. Si ve problemas evidentes antes de la implementación, significa que su solución no es la ideal.

En cuanto a la seguridad, también creo que es TERRIBLE idea de que todos compartan una cuenta de servicio:en este momento solo eres tú y sabes que eres el que está haciendo los cambios. En 5 años, cuando tenga 5 administradores, querrá saber quién cambió qué y buscar en los registros de auditoría para ver quién usó qué clave cuando es un dolor real.
Es mejor que las personas inicien sesión como ellos mismos y usen sudo o algo similar para escalar sus privilegios y hacer lo que sea necesario.

Si aún desea centralizar las claves SSH, le sugiero que busque un sistema de implementación como Puppet o radmind para administrar/distribuir el authorized_keys archivos al ~user/.ssh/ apropiado directorios (o piratear una solución casera que los SCP en su lugar).
A medida que se expande a varios servidores, es posible que desee consultar el parche de clave pública LDAP para versiones anteriores de OpenSSH (o el AuthorizedKeysCommand directiva y un script apropiado en la versión más reciente de OpenSSH) también para que pueda centralizar a sus usuarios y no tener que distribuir sus claves por toda su red, pero es probable que eso le lleve bastante lejos.


Linux
  1. Cómo configurar los privilegios de Sudo para el usuario en Linux

  2. ¿Para qué sirven los inodos?

  3. ¿Qué es un buen mnemotécnico para Shell Double vs. ¿Comillas simples?

  4. ¿El @reboot de Crontab solo funciona para root?

  5. ¿Cuál es la contraseña raíz predeterminada para MySQL 5.7?

11 ejemplos útiles de comandos divididos para sistemas Linux

Espacio reservado para la raíz en un sistema de archivos:¿por qué?

Genere claves SSH para iniciar sesión sin contraseña en Ubuntu

¿Es bueno hacer una partición separada para /boot?

Cómo configurar ssh sin contraseña con claves RSA

¿Agregar entropía de números aleatorios para claves GPG?