¿Es un método seguro permitir el inicio de sesión de root en SSH con "PermitRootLogin sin contraseña"?

0

He configurado mi IP en vivo en /etc/hosts.allow , y rechazo todos los otros hosts. También he establecido PermitRootLogin without-password en /etc/ssh/sshd_config .

¿Es un método seguro? ¿Puede un atacante descifrar mi clave e iniciar sesión en mi servidor? Si es así, por favor explique cómo es posible.

    
pregunta LOKESH 29.11.2017 - 06:52
fuente

2 respuestas

1

Este es un malentendido común para la característica PermitRootLogin . La opción without-password no significa que no haya autenticación y que cualquiera pueda ingresar sin una contraseña. Todo lo que significa esta opción es que el inicio de sesión solo es posible mediante un método de respaldo, como la autenticación de clave pública. Incluso si un atacante conoce su contraseña de root, no podrá iniciar sesión a menos que tenga su clave privada.

En realidad, es mejor usar without-password si necesita iniciar sesión como root, ya que garantiza que la cuenta root no pueda ser forzada. Si tuviera que iniciar sesión como root con una contraseña, podría estar sujeto a un ataque remoto, mientras que la autenticación de clave pública garantiza que solo pueda iniciar sesión con los archivos de credenciales adecuados. Esto es mejor que iniciar sesión como un usuario diferente y usar su para elevar a la raíz, ya que un compromiso de ese otro usuario podría resultar en una raíz comprometida, ya que el usuario puede monitorear las pulsaciones de teclado ingresadas en su shell. Esto se explica en detalle en la respuesta a ¿Cuál es la forma más segura de obtener privilegios de root: sudo, su o login? .

Si no necesita tener root, entonces usar otro usuario dedicado estaría bien. En este caso, la configuración de PermitRootLogin no sería beneficiosa, ya que no hay razón para tener acceso de root si no es necesario.

    
respondido por el forest 29.11.2017 - 07:07
fuente
0

Primero veamos qué significa:

  

PermitRootLogin

     

Especifica si la raíz puede iniciar sesión usando ssh (1). los   el argumento debe ser “sí”, “sin contraseña”, “solo comandos forzados” o   "no". El valor predeterminado es "sí".

     

Si esta opción está configurada como "sin contraseña", autenticación de contraseña   está deshabilitado para root. Si esta opción está configurada en "solo comandos forzados",   se permitirá el inicio de sesión con autenticación de clave pública, pero solo si   Se ha especificado la opción de comando (que puede ser útil para tomar   copias de seguridad remotas incluso si el inicio de sesión de root no está permitido normalmente). Todos los demás   Los métodos de autenticación están deshabilitados para la raíz.

     

Si esta opción está configurada en "no", la raíz no tiene permiso para iniciar sesión.

Una mejor práctica es usar PermitRootLogin no , porque no quieres permitir que la raíz se autentique directamente en el sistema.

    
respondido por el Mirsad 29.11.2017 - 07:02
fuente

Lea otras preguntas en las etiquetas