en openssh, puede restringir el inicio de sesión de root (PermitRootLogin no), pero ¿puede tener una excepción?
Respuesta1
Dado que iniciar sesión como root no es una buena idea, eche un vistazo a la página de manual de sshd:
Permitir inicio de sesión raíz
Especifica si root puede iniciar sesión utilizando ssh(1). El argumento debe ser "sí", "sin contraseña", "solo comandos forzados" o "no". El valor predeterminado es "sí".
Si esta opción está configurada en ``sin contraseña'', la autenticación de contraseña está deshabilitada para root.
Si esta opción está configurada en ``solo comandos forzados'', se permitirá el inicio de sesión raíz con autenticación de clave pública, pero sólo si se ha especificado la opción de comando (lo que puede ser útil para realizar copias de seguridad remotas incluso si el inicio de sesión raíz normalmente no es permitido). Todos los demás métodos de autenticación están deshabilitados para root.
Si esta opción está configurada en ``no'', el root no podrá iniciar sesión.
Por lo tanto, podría utilizarlo PermitRootLogin without-password
para permitir la autenticación de clave pública/privada y al mismo tiempo no permitir la autenticación de contraseña; o tal vez PermitRootLogin forced-commands-only
permitirle iniciar sesión como root pero sin acceso interactivo.
El último caso requiere que edite authorized_keys
el archivo para especificar qué comando está habilitado para el usuario que registra, así:
command="rdiff-backup --server" ssh-rsa AAAAB3NzaC1y... (rest of key)
O incluso mejor, permita el inicio de sesión root solo con comandos forzados desde una dirección IP específica:
from="10.1.1.1",command="/home/user/command/to/execute" ssh-rsa AAAAB3NzaC1y... (rest of key)