GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo configurar claves SSH en Debian

Hay 2 métodos para acceder al SSH, uno está basado en contraseña y otro está basado en clave. La autenticación basada en clave SSH está destinada a proporcionar una forma segura de acceder a un servidor con clave privada y pública.

En esta guía, aprenderá las siguientes formas de proteger su máquina Debian.

  1. Crear nuevo usuario con privilegios sudo
  2. Deshabilitar autenticación basada en contraseña
  3. Generar claves SSH
  4. Configurar clave SSH para el usuario
  5. Deshabilitar solicitud de contraseña al usar sudo

Paso 1:Crear nuevo usuario

Puede omitir esto si ya ha creado el usuario.

Cree un nuevo usuario con contraseña deshabilitada usando el siguiente comando.

sudo adduser username --disabled-password

Siga las indicaciones y confirme con Y , que crea el usuario con el directorio de inicio del usuario en /home/username .

Otorgar acceso sudo al nuevo usuario

Agregue el nuevo usuario al grupo sudo para que el usuario tenga privilegios de administrador para ejecutar comandos.

sudo usermod -aG sudo username

Ahora tiene un nuevo usuario con derechos sudo y contraseña deshabilitados.

Paso 2:deshabilite la autenticación de contraseña para el usuario

Edite el /etc/ssh/sshd_config archivo para configurar la autenticación.

sudo nano /etc/ssh/sshd_config

Añade lo siguiente a lo último.

Match User username
    PasswordAuthentication no

Guarde el archivo y reinicie SSH.

sudo systemctl restart ssh

Ahora el usuario no puede iniciar sesión con contraseña.

Paso 3:generar clave SSH

Inicie sesión como el usuario que ha creado anteriormente.

sudo su username

Crear nuevo .ssh directorio para guardar las teclas ssh y navegar hasta él.

No uses sudo aquí.

mkdir .ssh
cd .ssh

Crear claves SSH.

ssh-keygen -m PEM -t rsa -b 4096 -C "your_email"

Aquí he usado para PEM formato para generar una clave basada en RSA. Si el -m PEM se elimina, podría generar la clave OpenSSH.

Cuando se le solicite, proporcione el nombre de la clave.

Omita la frase de contraseña y complete la configuración.

Ahora debería tener 2 archivos dentro de su directorio .ssh.

filename.pub
filename

El nombre de archivo.pub es su clave pública y el nombre de archivo es su clave privada.

Paso 4:Configure la clave SSH para el acceso SSH.

Para permitir la conexión SSH, debe agregar la clave pública al authorized_keys archivo.

cat filename.pub >> authorized_keys

Este comando creará un archivo llamado authorized_keys y agregue el contenido de la clave pública.

Copie el contenido de la clave privada, puede realizar la autenticación en el servidor usando esto.

cat filename

Este comando genera el contenido de su clave privada. Guárdelo para autenticación.

Paso 5:deshabilite la solicitud de contraseña mientras usa sudo

De manera predeterminada, cuando ejecuta comandos basados ​​en sudo con otro usuario, el sistema le solicita que ingrese la contraseña del usuario.

Como no usamos contraseña, debemos deshabilitarla.

Salga del shell de usuario y vuelva a su shell raíz.

Ejecute el comando para ingresar visudo .

sudo visudo

Añade lo siguiente a lo último.

username ALL=(ALL) NOPASSWD: ALL

Guarde el archivo y salga.

Eso es todo. Ahora tiene un usuario que puede iniciar sesión solo con claves SSH.


Linux
  1. Cómo configurar túneles SSH

  2. Cómo configurar claves SSH

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

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

  5. Cómo configurar claves SSH en Ubuntu 16.04

Cómo configurar claves SSH en CentOS 7

Cómo configurar claves SSH en Debian 9

Cómo configurar claves SSH en Debian 10

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

Cómo configurar claves SSH en Debian 11 Linux

Cómo convertir a un usuario en administrador en Debian 11