GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo generar y usar la clave SSH en el sistema Linux?

Hoy, daremos una breve descripción sobre cómo generar y usar la clave SSH en el sistema Linux.

¿Cómo generar la clave SSH en un sistema Linux?

Una clave SSH es una credencial de acceso al protocolo de red SSH (Secure Shell). Este protocolo de red segura de autenticación y cifrado se utiliza para la comunicación remota entre máquinas en una red abierta no segura.

En otras palabras, podemos decir que una clave SSH es una credencial de acceso seguro que se utiliza en el shell seguro ( protocolo SSH). Las claves SSH utilizan pares de claves basadas en tecnología de infraestructura de clave pública, el estándar de oro para la autenticación y el cifrado de identidad digital, para proporcionar un método de autenticación seguro y escalable.

¿Cómo funciona la autenticación con un par de claves SSH?

El par de claves SSH se utiliza para autenticar la identidad de un usuario o proceso que desea acceder a un sistema remoto utilizando el protocolo SSH. La clave pública SSH es utilizada tanto por el usuario como por el servidor remoto y se usa para cifrar mensajes.

En el lado del servidor remoto, la clave pública se guarda en un archivo que contiene una lista de todos los autorizados. claves públicas. Por parte del usuario, la clave pública se almacena en el software de administración de claves SSH o en un archivo en su computadora. La clave privada permanece solo en el sistema que se usa para acceder al servidor remoto y se usa para descifrar mensajes.

Cuando un usuario o proceso solicita una conexión al servidor remoto usando el cliente SSH, un desafío- se inicia la secuencia de respuesta para completar la autenticación. El servidor SSH reconoce que se está solicitando una conexión y envía una solicitud de desafío encriptada utilizando la información de clave pública compartida.

El cliente SSH luego descifra el mensaje de desafío y responde al servidor SSH. El usuario o proceso debe responder correctamente al desafío para que se le conceda acceso. Esta secuencia de desafío y respuesta ocurre automáticamente entre el cliente SSH y el servidor SSH sin ninguna acción manual por parte del usuario.

En esta guía, nos centraremos en configurar la clave SSH para el sistema Ubuntu. Puede utilizar estos pasos para configurar la clave SSH en todos los entornos de Linux. Las claves SSH brindan una forma sencilla y segura de iniciar sesión en su servidor y se recomiendan para todos los usuarios.

Pasos 1:Cree los pares de claves RSA

El primer paso es crear los pares de claves en el sistema local.





De forma predeterminada, ssh-keygen genera un par de claves RSA de 2048 bits. Opcionalmente, puede pasar los indicadores -b 4096 para crear una clave de bit RSA más grande. Después de ingresar el comando ssh-keygen, debería ver la siguiente pantalla.



Presione ENTRAR para guardar los pares de claves en .ssh/ subdirectorio en su directorio de inicio o especifique una ruta alternativa. Si generó la clave SSH anteriormente, es posible que vea la siguiente pantalla.





Si selecciona sobrescribir la clave existente en el servidor, ya no podrá autenticarse con la clave anterior. Tenga mucho cuidado al seleccionar sí, ya que este proceso no se puede revertir. Después de esto, verá la siguiente pantalla.



Aquí, opcionalmente, puede ingresar una frase de contraseña segura, lo cual es muy recomendable. Una frase de contraseña es similar a una contraseña. Sin embargo, una contraseña generalmente se refiere a algo que se usa para autenticar o iniciar sesión en un sistema. Una contraseña generalmente se refiere a un secreto utilizado para proteger una clave de cifrado.

Una clave de cifrado se deriva de la frase de contraseña y se utiliza para cifrar los recursos protegidos. Una frase de contraseña agrega una capa adicional de seguridad para evitar que usuarios no autorizados inicien sesión. Después de esto, verá la siguiente pantalla.





Ahora, tendrá una clave pública y privada que puede usar para la autenticación. El siguiente paso es colocar la clave pública en su servidor para que pueda usar la autenticación basada en clave SSH para iniciar sesión.

Paso:2 Copie la clave pública al servidor CentOS

La forma más sencilla de copiar la clave pública en el servidor es usar el comando ssh-copy-id. El comando anterior es muy recomendable debido a su simplicidad. Copie la clave SSH usando el comando ssh-copy-id. Con el comando ssh-copy-id, deberá especificar el nombre de usuario y la dirección IP/servidor host en el que desea pegar la clave SSH.

ssh-copy-id example@ unixlinux.online/Servidor anfitrión
Por ejemplo, # ssh-copy-id [email protected] (192.168.2.152 es nuestra dirección IP interna que hemos utilizado para realizar los pasos del artículo. Reemplace esta dirección IP con su dirección IP real).



Después de eso, puede ver la siguiente pantalla.





Aquí, deberá ingresar la contraseña del host remoto en el que desea pegar la clave SSH y presionar “ENTER”. Una vez que presione "ENTRAR", se conectará al host remoto y copiará el contenido de su clave ~/.ssh/id_rsa.pub en un archivo en el directorio de inicio de la cuenta remota ~/.ssh llamado authorized_keys. Es posible que vea la siguiente pantalla.



Ahora, su clave id_rsa.pub se cargó en la cuenta remota.

Paso 3:autentíquese en su servidor Ubuntu usando claves SSH

Si completó el procedimiento, debería poder iniciar sesión en el host remoto sin la contraseña de la cuenta remota. Ingrese el siguiente comando en la terminal para iniciar sesión en su servidor remoto sin la contraseña de la cuenta remota.

# ssh [email protected]_address_of_remote_server
Por ejemplo, # ssh [email protected]





Una vez que presione "ENTRAR", iniciará sesión en el host remoto.

Paso 4:deshabilite la autenticación de contraseña en su servidor

Si ha iniciado sesión correctamente en el servidor, eso significa que ha configurado correctamente la autenticación basada en clave SSH. Sin embargo, su autenticación basada en contraseña todavía está activa en el servidor. Esto significa que su servidor aún está expuesto a ataques de fuerza bruta.

Para evitar ataques de fuerza bruta, debe deshabilitar la autenticación de contraseña en su servidor. Para eso, asegúrese de que su cuenta tenga privilegios de administrador (raíz). Primero, inicie sesión en el servidor en el que configuró la autenticación basada en clave SSH.

Para deshabilitar la autenticación basada en contraseña, deberá usar el siguiente comando.

# sudo vi/etc/ssh/ssg_config





Dentro del archivo busque la siguiente línea PasswordAuthentication. Presiona “I ” para insertar el texto y editar la línea y establecer el valor “NO ”. Esto desactivará su capacidad para iniciar sesión a través de SSH utilizando contraseñas de cuenta.



Una vez que haya terminado con el procedimiento anterior, presione “Esc ” y escriba “:wq ” y pulsa enter.



Para implementar realmente estos cambios, deberá reiniciar el servicio sshd utilizando el debajo del comando.

# sudo systemctl restart sshd.service



Eso es todo.






Linux
  1. Cómo generar una clave SSH en Windows 10

  2. ¿Cómo instalar y usar Linux Screen?

  3. Cómo configurar la clave pública y privada SSH en Linux

  4. Cómo usar los comandos strace y ltrace en Linux

  5. Cómo instalar y usar Glances para monitorear sistemas Linux

Cómo instalar y usar Skype en el sistema Linux. Ahora es más fácil

Cómo instalar y usar el compilador GCC en el sistema Linux

Cómo montar y usar una unidad exFAT en un sistema Linux

Cómo instalar y usar Tmux (terminal multiplexor) en el sistema Linux

Cómo instalar y usar AsciiDoc en el sistema Linux

Cómo instalar y usar el emulador de terminal Konsole en el sistema Linux