Si administra un servidor Linux, entonces sabrá lo tedioso que puede ser ingresar su contraseña cada vez que inicia sesión a través de SSH o copia archivos usando scp. Este tutorial presenta el uso de la clave SSH para lograr un inicio de sesión SSH sin contraseña, y no es necesario ingresar una contraseña cuando se usa scp para copiar archivos. Además de facilitar el inicio de sesión SSH y la copia de archivos SCP, el inicio de sesión sin contraseña SSH también agrega otra línea de seguridad al servidor Linux.

Pasos de configuración de inicio de sesión sin contraseña SSH

  1. Primero, generamos un par de claves SSH en nuestro sistema Linux: clave SSH y clave pública SSH. La clave se guarda en su propio sistema Linux.
  2. Luego, la clave pública se carga en el servidor Linux. Después de eso podremos iniciar sesión vía SSH sin contraseña. Una clave SSH es como tu prueba de identidad.

1 Genere claves SSH y claves públicas en su propio sistema Linux

Abra una terminal y use ssh-keygen a continuación para generar la clave RSA y la clave pública. -t indica tipo, lo que significa generar una clave de cifrado RSA.

ssh-keygen -t rsa

RSA también es el tipo de cifrado predeterminado. Entonces también puedes ingresar ssh-keygen. La longitud RSA predeterminada es 2048 bits. Si le preocupa mucho la seguridad, puede especificar una longitud de 4096 bits.

ssh-keygen -b 4096 -t rsa

Durante el proceso de generación de la clave SSH, se le pedirá que especifique un archivo para guardar la clave. Simplemente presione Entrar para usar el archivo predeterminado. Luego debe ingresar una contraseña para cifrar su clave SSH. La contraseña debe tener al menos 20 caracteres. La clave SSH se guardará en el archivo .ssh/id_rsa en el directorio de inicio. La clave pública SSH se guarda en el archivo .ssh/id_rsa.pub.

Generating public/private rsa key pair.
Enter file in which to save the key (/home/matrix/.ssh/id_rsa):  按Enter键
Enter passphrase (empty for no passphrase):   输入一个密码
Enter same passphrase again:   再次输入密码
Your identification has been saved in /home/matrix/.ssh/id_rsa.
Your public key has been saved in /home/matrix/.ssh/id_rsa.pub.
The key fingerprint is:
e1:dc:ab:ae:b6:19:b0:19:74:d5:fe:57:3f:32:b4:d0 matrix@vivid
The key's randomart image is:
+---[RSA 4096]----+
| .. |
| . . |
| . . .. . |
| . . o o.. E .|
| o S ..o ...|
| = ..+...|
| o . . .o .|
| .o . |
| .++o |
+-----------------+

Si observa el archivo .ssh/id_rsa, verá que este archivo está cifrado. Es decir, se cifra con la contraseña que ingresaste.

less .ssh/id_rsa

 

2Cargue la clave pública SSH al servidor Linux

Esto se puede hacer usando el comando ssh-copy-id.

ssh-copy-id username@remote-server

 

Después de ingresar la contraseña del usuario remoto, la clave pública SSH se cargará automáticamente. La clave pública SSH se almacena en el archivo .ssh/authorized_keys en el servidor Linux remoto.

Una vez completada la carga, no es necesario volver a ingresar la contraseña para iniciar sesión SSH. Sin embargo, cuando utiliza la clave SSH para iniciar sesión por primera vez, debe ingresar la contraseña de cifrado de la clave SSH una vez. (Solo necesita ingresarla una vez y podrá iniciar sesión automáticamente en el futuro. Ya no necesita ingresar la contraseña de la clave).

No es necesario ingresar una contraseña cuando se usa el comando scp para transferir archivos.

Conocimiento clave SSH

El sistema Linux tiene un programa de gestión de llaveros. El llavero está protegido por la contraseña de inicio de sesión del usuario. Cuando inicie sesión en el sistema Linux, la contraseña del conjunto de claves se desbloqueará automáticamente, lo que le permitirá acceder al conjunto de claves. Las contraseñas para claves SSH también se pueden almacenar en el conjunto de claves. Por lo tanto, cuando utiliza una clave SSH para iniciar sesión en un servidor Linux remoto por primera vez, debe ingresar la contraseña de la clave SSH una vez. En el futuro, ya no necesitará ingresar una contraseña al iniciar sesión con una clave SSH. El programa de llavero para Ubuntu es caballito de mar.

Una clave SSH es como tu prueba de identidad. El servidor Linux remoto utiliza la clave pública SSH que generó para cifrar un mensaje, y solo su clave SSH puede descifrar el mensaje. Por lo tanto, si otras personas no tienen su clave SSH, no podrán descifrar el mensaje cifrado y, por lo tanto, no podrán iniciar sesión en su servidor Linux.

Configurar el inicio de sesión SSH sin contraseña es así de simple.

Deja una respuesta