Este artículo describe el procedimiento para configurar una autenticación de clave pública Secure Shell (SSH).
-
Inicie sesión en el servidor.
-
Verifica que el usuario existe:
`getent passwd <username>` -
Busque el valor asignado al AuthorizedKeysFile parámetro dentro de /etc/ssh/sshd_config para determinar el archivo donde se almacena la clave:
`grep AuthorizedKeysFile /etc/ssh/sshd_config`Nota :La ubicación predeterminada es ~/.ssh/authorized_keys dentro del directorio de inicio predeterminado del usuario.
-
Cambie al directorio de inicio del usuario:
`cd /directory-path`Nota :Sustituir directorio-ruta con la ruta del directorio de inicio del usuario.
-
Verifique los niveles de permiso para .ssh/ directorio. Debería tener
0700permisos y ser propiedad del usuario.`ls .ssh`una. Si el directorio no existe, créelo y establezca los permisos en
0700:`mkdir -m 700 .ssh`b. Si el directorio existe, puede establecer la propiedad por separado:
`chmod 700 .ssh/` `chown -R username:username /path/to/home/.ssh` -
Cambiar a .ssh/ directorio y claves_autorizadas archivo:
```cd .ssh/ vim authorized_keys ll``` -
Agregue la clave pública SSH al final de authorized_keys archivo:
`vim authorized_keys` -
Cambiar permisos a
600y garantizar la propiedad adecuada del archivo:`chmod 600 authorized_keys` `chown -R username:username authorized_keys`
Deshabilitar autenticación de contraseña
Si desea que todos los usuarios inicien sesión con claves públicas y no con contraseñas, puede deshabilitar la autenticación con contraseña.
Importante :Deshabilitar la autenticación de contraseña bloquea a los usuarios que usaron una contraseña para acceder al servidor si la autenticación SSH no está configurada para su cuenta.
-
Cree una copia de seguridad de sshd_config archivo antes de realizar cualquier cambio:
mkdir /home/username/backup cp /etc/ssh/sshd_config /home/username/backup/sshd_config.bak -
Abra el sshd_config archivo:
`vim /etc/ssh/sshd_config` -
Encuentra la PubkeyAuthentication parámetro y configúrelo en sí. Si la línea está comentada, elimine cualquier indicador de comentario (
#). -
Encuentre la autenticación de contraseña parámetro dentro del mismo archivo y configúrelo en
no. -
Guarde los cambios en el archivo y salga del archivo.
-
Verifique la sintaxis usando
sshd -t. Si no hay errores, vuelva a cargarsshd:`service sshd reload`
Notas adicionales:
- El archivo de clave privada en su estación de trabajo local (del lado del cliente) debe tener permisos establecidos en
600y el .ssh el directorio debe tener los permisos establecidos en700. Los archivos Authorized_keys también funcionan con644permisos, pero600es más seguro.