Cómo configurar el inicio de sesión SSH basado en la tecla en Linux

Cómo configurar el inicio de sesión SSH basado en la tecla en Linux

A principios de los 90, los profesionales de TI estaban utilizando Telnet para la transferencia de datos que era un protocolo de capa de aplicación y se usaba para transferir datos sin cifrado. Más tarde se creó una alternativa segura de Telnet SSH que cifra los datos para que otros no puedan recuperarlos sin acceso.

SSH o Secure Socket Shell es un protocolo de red utilizado para acceder a un sistema o servidor de forma remota de forma segura. Es un protocolo de capa de aplicación y le permite acceder a otra máquina sin acceso físico de forma remota a través de Internet. Con SSH, puede emitir comandos remotos, transferir archivos, conectarse a servidores remotos y comunicarse entre dos computadoras de manera encriptada.

Puede iniciar sesión en su servidor SSH remoto por tipos:

  • Autenticación de contraseña
  • Autenticación de la clave pública (sin contraseña)

Aquí discutiremos la configuración de la autenticación basada en claves para el inicio de sesión de SSH.

Paso 1 - Genere el par de claves SSH

En primer lugar, necesitaría generar un par de claves (RSA o DSA), puede especificar opción RSA o tecla DSA usando '-t' interruptor de línea de comandos. Si no pasamos el -T Parámetro, predeterminado creará una tecla RSA.

ssh -keygen -t RSA  

Sigue al asistente rápido:

  1. Ingrese y acepte la ubicación predeterminada. También puede seleccionar un nombre de archivo y ubicación diferentes.
  2. A continuación, se le pedirá una frase de pases. Depende de ti que si lo quieres o no. Si no lo desea, presione ENTER de; de ​​lo contrario, ingrese una frase de pases para obtener una capa adicional de seguridad. Además, no usar una frase de pases lo ayudará a automatizar muchas tareas.
  3. Presione enter y sus claves se crearán.

Ahora, puede ver los archivos de clave generados con el siguiente comando.

LS -L .ssh/  

Paso 2 - Copiar la clave pública al sistema remoto

el ~/.ssh/autorized_key es el archivo responsable de mantener las claves públicas de los clientes remotos. Durante la autenticación basada en la clave, el sistema verifica las claves públicas en el mismo archivo.

Simplemente puede copiar el contenido de la tecla pública (archivo con .Extensión del pub) desde su sistema hasta el archivo autorizado_key en el servidor remoto. De lo contrario, que se haga ejecutando el siguiente comando.

ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.10.20  
Salida: 21 [correo electrónico protegido] S PASSA: Ahora intente iniciar sesión en la máquina, con "SSH '192.168.10.20 '", y check in: .ssh/autorized_keys para asegurarse de que no hemos agregado claves adicionales que no esperabas. 

Se le pedirá la contraseña remota_user. Una vez que ingrese la contraseña correcta, la clave pública se almacenará en el servidor remoto.

Paso 3 - Verifique SSH sin contraseña

Ahora, como lo hemos hecho, simplemente intente SSH al sistema remoto. Iniciará sesión en el sistema remoto sin ingresar la contraseña.

ssh [correo electrónico protegido]  

Debe iniciar sesión automáticamente ahora, sin solicitar la contraseña. Si en caso de que se solicite al sistema la contraseña, significa que la clave no se copia correctamente en el servidor de destino. Para resolver esto, verifique que la clave se agregue correctamente al archivo autorizado_key y sus permisos.

Conclusión

En este tutorial, ha aprendido a crear un par de claves SSH y configurar el inicio de sesión basado en clave entre dos sistemas.