GNU/Linux >> Tutoriales Linux >  >> Cent OS

Configurar claves SSH en CentOS 7:¿proceso paso a paso?

SSH (Secure Shell) es un protocolo cifrado que se utiliza para comunicarse de forma segura entre el sistema del cliente y el servidor. Puede realizar tareas administrativas, conectarse a su sistema de forma remota y acceder a archivos. Es una forma muy segura de comunicarse con el servidor usando claves SSH, también una forma conveniente que la autenticación con contraseña.

Aquí en LinuxAPT, como parte de nuestros Servicios de Administración de Servidores, ayudamos regularmente a nuestros Clientes a realizar consultas SSH relacionadas.

En este contexto, veremos cómo crear claves SSH en el sistema CentOS 7 y cómo copiarlas al servidor de diferentes maneras.


¿Cómo crear claves SSH en CentOS?

i. Antes de continuar con este procedimiento de configuración, asegúrese de que está utilizando un usuario con privilegios de sudo.

ii. Luego comience generando un par de claves en el sistema del cliente usando el siguiente comando:

$ ssh-keygen

De forma predeterminada, ssh-keygen generará un par de claves RSA de 2048 bits.

iii. También puede crear una clave más grande de 4096 bits simplemente pasando -b 4096 en el indicador como se indica a continuación:

$ ssh-keygen -t rsa -b 4096

Mostrará la salida de la siguiente manera:

Output
Generating public/private rsa key pair.
Enter file in which to save the key (/home/yourusername/.ssh/id_rsa):

IV. Presione la tecla Intro para guardar los pares de claves en el directorio ./ssh, que es la ubicación predeterminada o puede especificar la ubicación según su elección.

Después de eso, se le pedirá que ingrese una frase de contraseña segura como se muestra a continuación. Es una buena práctica establecer una frase de contraseña que agregará una capa de seguridad adicional a sus claves. Es obligatorio, por lo que puede omitirlo simplemente presionando la tecla Intro.

Output
Enter passphrase (empty for no passphrase):

Generará una salida de la siguiente manera:

Your identification has been saved in /home/yourusername/.ssh/id_rsa.
Your public key has been saved in /home/yourusername/.ssh/id_rsa.pub.

La huella dactilar clave es:

SHA256:Vh9pii66/e/md3LLJUuUILZuz37uGg8Yeokkdv7xwCE [email protected]
The key's randomart image is:
+---[RSA 4096]----+
|                 |
|             .   |
|          + =    |
|         + * o . |
|      o E = . o  |
|     . B * = .   |
|      . = X o o .|
|     o . +.*o*++ |
|    o....==o*OB. |
+----[SHA256]-----+

Sus claves públicas y privadas están listas para usar para autenticarse con su servidor CentOS.

También puede verificar si sus archivos se generan o no escribiendo:

$ ls ~/.ssh/id_*

Mostrará una salida como esta:

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


¿Cómo copiar la clave pública al servidor CentOS?

Aquí, colocaremos la clave pública de nuestro servidor CentOS. Es una forma rápida y sencilla de copiar público utilizando la utilidad ssh-copy-id.

i. Ejecute el siguiente comando para hacerlo:

$ ssh-copy-id username@server_ip_address

Se le pedirá que ingrese la contraseña para su nombre de usuario:

Output
username@server_ip_address's password:

Una vez que la autenticación del usuario sea exitosa, la clave pública se agregará al archivo ~/.ssh/authorized_keys en el usuario remoto y la conexión se desconectará:

Output
Number of key(s) added: 1

ii. Ahora puede intentar iniciar sesión en su máquina con el comando ssh username@server_ip_address y verificar que solo se agregaron las claves que desea agregar.

Si su sistema cliente no tiene instalada la utilidad ssh-copy-id, puede usar el siguiente comando para copiar la clave pública:

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

Asegúrese de tener acceso SSH basado en contraseña a su servidor.


¿Cómo iniciar sesión en el servidor usando claves SSH?

Ahora, debería poder iniciar sesión en la máquina remota sin la contraseña del usuario remoto.

i. Intenta conectarte usando el comando SSH:

$ ssh nombredeusuario@dirección_ip_del_servidor

Si está intentando iniciar sesión por primera vez, es posible que se le indique lo siguiente.

ii. Escriba sí y presione la tecla Intro para continuar:

Output
The authenticity of host '192.168.43.9 (192.168.43.9)' can't be established.
ECDSA key fingerprint is ed:ed:f4:g9:66:ge:53:48:e1:55:00:fd:6d:d7:22:fe.
Are you sure you want to continue connecting (yes/no)? yes

Ahora, si no ha establecido una frase de contraseña para sus claves, iniciará sesión inmediatamente sin pedir una frase de contraseña. De lo contrario, se le pedirá que ingrese la frase de contraseña. Después de una autenticación exitosa, una nueva sesión de shell abrirá su cuenta de usuario en el servidor CentOS.


¿Cómo deshabilitar la autenticación de contraseña SSH?

Agregará una capa de seguridad más si deshabilita la autenticación de contraseña para SSH. Antes de iniciar el proceso, asegúrese de poder autenticarse en su servidor sin ingresar la contraseña y debe tener una cuenta de usuario habilitada para Sudo.

i. Intente iniciar sesión en su servidor usando ssh:

$ ssh username@server_ip_address

ii. Ahora edite el archivo de configuración de SSH ubicado en /etc/ssh/sshd_config:

$ sudo nano /etc/ssh/sshd_config

Busque la directiva PasswordAuthentication y, si la línea está comentada, elimine el comentario de la línea y establezca el valor en "no" como se indica a continuación:

PasswordAuthentication no

iii. Guarde y cierre el archivo.

IV. Debe reiniciar el servicio SSH usando el siguiente comando:

$ sudo systemctl restart sshd

Ahora, la autenticación basada en contraseña está deshabilitada en su servidor CentOS.



Cent OS
  1. Cómo configurar claves SSH

  2. Instalar Wine en CentOS 8 - ¿Proceso paso a paso para hacerlo?

  3. Cómo configurar claves SSH en CentOS 8

  4. Cómo configurar claves SSH en Ubuntu 16.04

  5. Cómo configurar claves SSH en Ubuntu 18.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 configurar claves SSH – SO Windows?

Cómo generar una clave SSH en CentOS 8

Cómo configurar claves SSH en Debian 11 Linux