GNU/Linux >> Tutoriales Linux >  >> Debian

Cómo configurar claves SSH en Debian 10

Secure Shell (SSH) es un protocolo de red criptográfico utilizado para una conexión segura entre un cliente y un servidor y admite varios mecanismos de autenticación. La conexión cifrada se puede usar para ejecutar comandos en el servidor, túneles X11, reenvío de puertos y más.

La contraseña y la clave pública son los dos mecanismos más comunes para las autenticaciones.

La autenticación mediante una clave pública se basa en el uso de firmas digitales y es más segura y conveniente que la autenticación de contraseña tradicional.

Este artículo describe cómo generar claves SSH en sistemas Debian 10. También le mostraremos cómo configurar una autenticación basada en clave SSH y conectarse a servidores Linux remotos sin ingresar una contraseña.

Creación de claves SSH en Debian #

Lo más probable es que ya tenga un par de claves SSH en su máquina cliente Debian. Si está generando un nuevo par de claves, el antiguo se sobrescribirá.

Ejecute el siguiente ls Comando para verificar si existen los archivos clave:

ls -l ~/.ssh/id_*.pub

Si la salida del comando anterior contiene algo como No such file or directory o no matches found , significa que no tiene claves SSH y puede continuar con el siguiente paso y generar un nuevo par de claves SSH.

De lo contrario, si tiene un par de claves SSH, puede usarlas o hacer una copia de seguridad de las claves antiguas y generar otras nuevas.

Genere un nuevo par de claves SSH de 4096 bits con su dirección de correo electrónico como comentario ingresando el siguiente comando:

ssh-keygen -t rsa -b 4096 -C "[email protected]"

La salida se verá así:

Enter file in which to save the key (/home/yourusername/.ssh/id_rsa):

Presiona Enter para aceptar la ubicación y el nombre de archivo predeterminados.

A continuación, se le pedirá que escriba una frase de contraseña segura. Si desea utilizar una frase de contraseña, depende de usted. La frase de contraseña agrega una capa adicional de seguridad.

Enter passphrase (empty for no passphrase):

Si no desea utilizar una frase de contraseña, simplemente presione Enter .

Toda la interacción se ve así:

Para confirmar que se generó el par de claves SSH, ejecute el siguiente comando:

ls ~/.ssh/id_*

El comando enumerará los archivos clave:

/home/yourusername/.ssh/id_rsa /home/yourusername/.ssh/id_rsa.pub

Copiar la clave pública al servidor #

Ahora que tiene su par de claves SSH, el siguiente paso es copiar la clave pública al servidor que desea administrar.

La forma más fácil y recomendada de copiar la clave pública en el servidor remoto es usar ssh-copy-id herramienta.

Ejecute el siguiente comando en su máquina local:

ssh-copy-id remote_username@server_ip_address

Se le pedirá que ingrese el remote_username contraseña:

remote_username@server_ip_address's password:

Una vez que el usuario está autenticado, el contenido del archivo de clave pública (~/.ssh/id_rsa.pub ) se agregará al usuario remoto ~/.ssh/authorized_keys archivo y la conexión se cerrará.

Number of key(s) added: 1

Now try logging into the machine, with:   "ssh 'username@server_ip_address'"
and check to make sure that only the key(s) you wanted were added.

Si el ssh-copy-id La utilidad no está disponible en su máquina local, utilice el siguiente comando para copiar la clave pública:

cat ~/.ssh/id_rsa.pub | ssh remote_username@server_ip_address "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"

Inicie sesión en el servidor usando las claves SSH #

En este punto, debería poder iniciar sesión en el servidor remoto sin que se le solicite una contraseña.

Para probarlo, intente conectarse al servidor a través de SSH:

ssh remote_username@server_ip_address

Si no ha establecido una frase de contraseña, iniciará sesión de inmediato. De lo contrario, se le pedirá que ingrese la frase de contraseña.

Deshabilitar autenticación de contraseña SSH #

Para agregar una capa adicional de seguridad a su servidor, puede deshabilitar la autenticación de contraseña SSH.

Antes de deshabilitar la autenticación de contraseña, asegúrese de que puede iniciar sesión en su servidor sin una contraseña y que el usuario con el que está iniciando sesión tiene privilegios de sudo.

Inicie sesión en su servidor remoto:

ssh sudo_user@server_ip_address

Abra el archivo de configuración del servidor SSH /etc/ssh/sshd_config :

sudo nano /etc/ssh/sshd_config

Busque las siguientes directivas y modifíquelas como sigue:

/etc/ssh/sshd_config
PasswordAuthentication no
ChallengeResponseAuthentication no
UsePAM no

Una vez hecho esto, guarde el archivo y reinicie el servicio SSH:

sudo systemctl restart ssh

En este punto, la autenticación basada en contraseña está deshabilitada.


Debian
  1. Cómo configurar claves SSH

  2. Establecer una IP estática en Debian 11 - ¿Cómo hacerlo?

  3. Configurar claves SSH en el sistema Debian 9:¿cómo hacerlo?

  4. Cómo configurar claves SSH en Ubuntu 16.04

  5. Cómo configurar claves SSH en Debian

Cómo configurar claves SSH en Debian 9

¿Cómo configurar claves SSH – SO Windows?

Cómo establecer una IP estática en Debian 11

Cómo configurar la clave SSH en un servidor Plesk

Cómo configurar claves SSH en Debian 11 Linux

Cómo configurar WireGuard VPN en Debian 11