¿Por qué no se debe permitir que root inicie sesión a través de ssh?

Respuestas:

6

Sudo es la forma preferida para cuando necesita delegar tareas de administrador debido a su auditabilidad y granularidad. Sudo permite que todos los comandos se registren y permite que el administrador configure diferentes perfiles de sudo para individuos o grupos.

su o acceso root es todo o nada


fuente
Me inclino a llamar a FUD por esto. Eludir la auditoría es trivial con sudo -so sudo bash. A menos que esté hablando de restringir el conjunto de comandos /etc/sudoers, que nunca he visto implementados en un entorno de producción donde sudo se usa de forma interactiva. Cuando sudo está habilitado, el software malicioso (por ejemplo, ejecutado escribiendo makeo python setup.pyen ese repositorio aleatorio que acaba de clonar desde GitHub) tiene efectivamente permisos de root. Compare eso con el escenario donde sudo está deshabilitado y en su lugar se usa una conexión SSH separada para ejecutar comandos como root.
Feuermurmel
4

Root es la única cuenta que se garantiza que esté activada y habilitada en cada máquina Unix, por lo que es obvio elegirla para intentar forzar la contraseña por fuerza bruta. Sin herramientas externas (envoltorios que matan escáneres obvios, dispositivos de prevención de intrusos, ese tipo de cosas) es solo cuestión de tiempo antes de que se descubra la contraseña. Incluso con herramientas externas que impiden este tipo de comportamiento, sigue siendo una buena idea obligar a los usuarios entrantes a iniciar sesión como usuarios normales y luego su / sudo / pfexec a privs mejorados. Sí, es un paso adicional, y eso significa que tendrá que crear cuentas de usuario en máquinas que se comparten entre usuarios raíz, pero es otra barrera entre un atacante y un control ilimitado de la caja.

sysadmin1138
fuente
2

La principal diferencia es que el atacante también tiene que adivinar el nombre de usuario. Si deja que root inicie sesión, entonces solo tiene que adivinar la contraseña.

También puede falsificar el inicio de sesión de un usuario que obtiene la clave ssh o reenvía los datos utilizando el enfoque de hombre en el medio y puede iniciar sesión en el sistema sin tener que escribir la contraseña. Pero si inicia sesión como usuario, debe sudar los comandos y, por lo tanto, se ve obligado a escribir la contraseña manualmente. Si se registró como root, no necesita sudar las cosas, por lo que es un paso de seguridad menos.


fuente
1

Hay cientos de miles de máquinas que están escaneando en busca de sshd's y brutos forzándolos. "root" es una buena cuenta para probar primero porque si se rompe, entonces eres el propietario completo de la máquina. También es una cuenta común en todos los sistemas * nix, a menos que desactive los inicios de sesión raíz . Es una muy buena práctica de seguridad hacer esto.

Torre
fuente
1
Se requiere deshabilitar los inicios de sesión de raíz para proteger contra la fuerza bruta. Deshabilitar la autenticación basada en contraseña también lo protegerá contra el escaneo de personas y aún le permitirá autenticarse como root con poco riesgo. Ejecutar un IPS que elimine las conexiones después de algunos intentos fallidos también será más útil que simplemente bloquear el acceso a la raíz.
Zoredache
0

La principal ventaja de esto es que permite un control de acceso más flexible: si un usuario tiene derechos de root a través de sudo, es fácil otorgar derechos de root o quitarlos según sea necesario. Por el contrario, si realmente le das a la gente la raíz pw, no puedes quitarla (a menos que seas Men In Black ;-)), solo puedes cambiar la raíz pw, lo que afectará a todos.

En ese contexto, los inicios de sesión raíz directos son innecesarios porque nadie tiene la raíz pw.

(Aún necesitará la contraseña raíz para acceso de emergencia en la consola en modo de usuario único; pero debe haber disposiciones especiales para eso).

sleske
fuente
0

Pero HP-UX nunca fuerza la inaccesibilidad de la raíz a través de ssh, ¿por qué?

suyao
fuente
3
porque es viejo y nadie lo usa.
Torre