¿La autenticación basada en certificados es realmente mejor que la autenticación de contraseña en OpenSSH?

0

¡Hace poco me puse un VPS y lo he estado endureciendo al máximo de mi conocimiento limitado!

Estaba configurando OpenSSH para usar autenticación basada en certificados cuando algo no me iba bien. Esto podría ser una opción de configuración en el camino, pero si no es así, seguramente es bastante preocupante:

Al agregar una clave al host remoto, usé algo parecido a ssh-copy-id username@remote-host para copiarlo allí. Al hacer esto, me solicitó la contraseña para username @ remote-host, que proporcioné debidamente.

Cuando entré a trabajar al día siguiente, hice lo mismo desde una máquina en el trabajo, solo para actuar como a prueba de fallos y luego desactivé la autenticación de contraseña. Sin embargo, desde una tercera máquina, todavía podía cargar una clave y solo necesitaba saber el nombre de usuario y la contraseña.

Si es así como funciona, ¡seguramente un atacante solo tendrá que comprometer la contraseña, incluso si la autenticación basada en certificados está habilitada, lo que anula su uso ?!

Tengo que perderme algo, ¿no?

(No te preocupes, ¡tengo dos factores configurados en mi VPS usando Google Authenticator ahora!)

    
pregunta Richard 20.11.2014 - 17:40
fuente

2 respuestas

1

Asegúrese de que /etc/sshd_config contenga la siguiente línea:

PasswordAuthentication no

Es probable que tenga esa línea comentada, lo que le permite recurrir a la autenticación de contraseña. Asegúrese de reiniciar sshd después de cambiar su configuración.

Si desea instalar una clave desde una computadora nueva, puede comentar temporalmente esa línea, instalar su clave después de autenticarla y luego volver a deshabilitar la autenticación de contraseña.

También recomiendo deshabilitar el inicio de sesión root:

PermitRootLogin no

(Si solo permite la autenticación de clave pública, esto no importará tanto si el usuario root no tiene un archivo ~/.ssh/authorized_keys , pero es bueno tenerlo en caso de que cambie su configuración más adelante).

    
respondido por el Scott Weldon 20.11.2014 - 18:20
fuente
0

Siempre puedes conectarte con el nombre de usuario y la contraseña. Presionar una tecla no impide que la contraseña funcione; La clave ofrece un método adicional para abrir una sesión en el servidor de destino.

Si desea "desactivar" la autenticación basada en contraseña, puede reemplazar su contraseña con una enorme aleatoria que no recuerde.

    
respondido por el Tom Leek 20.11.2014 - 18:05
fuente

Lea otras preguntas en las etiquetas