
En mi servidor, tengo varias claves SSH públicas en formato ~/.ssh/authorized_keys
.
Me gustaría bloquear/no permitir/desactivar temporalmente una clave. Quiero evitar que el usuario inicie sesión con esta clave ahora. pero es posible que desee volver a habilitarlo más tarde (es decir, no quiero eliminar la clave por completo).
¿Cuál es la forma correcta/recomendada de hacerlo?
¿Debo simplemente poner un comentario #
al principio de la línea authorized_keys
, delante de la clave?
Para aclarar, no quiero bloquear a un usuario específico. Una cuenta de usuario se comparte entre varias personas y cada persona se conecta con su propia clave SSH. Quiero bloquear una clave SSH específica.
Respuesta1
Puede anteponer la clave con un comando forzado que le indique al usuario lo que está sucediendo. Por ejemplo:
restrict,command="printf 'Your key has been disabled\n'" ssh-rsa AAAAB2...19Q== [email protected]
o para Openssh anterior a v7.2:
command="printf 'Your key has been disabled\n'",no-pty,no-port-forwarding ssh-rsa AAAAB2...19Q== [email protected]
Luego obtienen:
$ ssh servername
PTY allocation request failed on channel 0
Your key has been disabled
Connection to servername closed.
Respuesta2
Sí, puedes simplemente poner #
(o cualquier otro carácter, siempre que la entrada inicial, por ejemplo, ssh-rsa
ya no sea válida) antes de la línea correspondiente.
Si hace eso, y el sistema también permite inicios de sesión con contraseña de texto sin formato, se le solicitará al usuario una contraseña para iniciar sesión. Por lo tanto, es posible que desees comprobar que no haya ninguna contraseña (conocida) asociada a la cuenta.