Cómo configurar las teclas SSH en Ubuntu Top 10.Top 10

Cómo configurar las teclas SSH en Ubuntu Top 10.Top 10
Este es un tutorial donde aprenderá a configurar las teclas SSH en Ubuntu 20.04. Las claves SSH aseguran que la seguridad de sus servidores y que el proceso de usuarios inicie sesión en él no ponga en peligro su seguridad. Lo hace haciendo el sistema habitual de autenticación de contraseña como aparte.

En pocas palabras, SSH o 'Secure Shell' es un protocolo cifrado, con el que puede conectarse a un servidor de forma remota y tener acceso a la información asociada con él. Proporciona una forma mucho más segura de registrarse para proporcionar una forma segura de iniciar sesión sin comprometer la seguridad.

Paso 1: crea el par de claves

Comenzaremos creando un par de claves en el sistema del cliente primero con acceso a la raíz al escribir lo siguiente:

$ ssh-keygen

Esto desencadena el último ssh-keygen para crear un par de claves RSA de 3072 bits de forma predeterminada. Puede agregar la bandera -b 4086 para generar una clave más grande. Presione Enter, y almacenará el par de claves en .SSH/ subdirectorio. Tenga en cuenta que si usted es un invitado en un servidor que ya tenía una clave instalada, el mensaje le preguntará si desea sobrescribirlo o no. Si ese es el caso, escriba 'Y' para indicar un sí.

A continuación, el aviso le preguntará si desea agregar una frase. Puede optar por no participar, pero le recomendamos que agregue uno. Fortalece el protocolo de seguridad al servir una capa adicional de protección para evitar un usuario no autorizado.

Paso 2: Copie la clave pública a su servidor

A continuación, tenemos que transferir la clave pública a su servidor Ubuntu.

Puede usar la utilidad SSH-Copy-ID utilizando el siguiente comando:

$ SSH-COPY-ID UserName@server_host

Esto debería hacer el truco en solo unos segundos. Si la clave se ha copiado con éxito, muévase en el tercer paso.

A veces, sucede que el método SSH-Copy-ID falla, o simplemente no está disponible. En este caso, deberá copiarlo a través de SSH basado en contraseña. Esto puede hacer usando el comando CAT y asegúrese de agregar el símbolo >> para agregar al contenido en lugar de sobrescribirlo.

$ Cat ~/.ssh/id_rsa.pub | SSH Remote_Username@server_ip_address
"Mkdir -p ~/.ssh && cat >> ~/.ssh/autorized_keys "

Si esta es la primera vez que te conecta a un nuevo host, tu sistema te mostrará algo como:

Simplemente escriba SÍ y presione el botón ENTER. Luego ingrese la contraseña a la cuenta de acceso del usuario, y la clave pública se copiará en su servidor Ubuntu.

En caso de que el acceso SSH basado en la contraseña se le dengue por alguna razón que no puede precisar, siempre puede copiar la clave pública manualmente. Agregue el ~/.SSH/Authorized_Keys a ID_RSA.Archivo de pub en su máquina remota. A continuación, inicie sesión en la cuenta de su servidor remoto y verifique si existe el directorio ~ SSH. Si no es así, escriba:

$ mkdir -p ~/.ssh

Ahora solo tienes que agregar la clave:

$ echo public_key_string >> ~/.ssh/autorized_keys
$ chmod -r go = ~/.ssh

Además, asegúrese de estar usando el ~ ssh/ USUARIO directorio y NO El directorio raíz:

$ chown -r Younis: Younis ~/.ssh

Paso 3: autenticar las teclas SSH

El siguiente paso es autenticar las teclas SSH en el servidor Ubuntu. Primero, inicie sesión en su host remoto:

$ SSH Nombre de usuario@remotos_host

Se le pedirá que ingrese la clave de frase de pases que agregó en el paso 2. Escribirlo y continuar. La autenticación llevará algo de tiempo, y una vez que esté listo, será llevado a un nuevo shell interactivo en su servidor Ubuntu

Paso 4: Deshabilitar la autenticación de contraseña

Con las teclas SSH autenticadas, ya no necesita el sistema de autenticación de contraseña.

Si la autenticación de contraseña está habilitada en su servidor, aún será propenso al acceso no autorizado de los usuarios a través de Ataques de Force Brute. Por lo tanto, sería mejor si deshabilita cualquier autenticación basada en contraseña.

Primero, verifique si tiene la autenticación basada en SSH-Key preparada para el raíz cuenta en este servidor. Si es así, debe cambiarlo a la cuenta de acceso de usuario privilegiado de sudo en este servidor, de modo que el acceso del administrador esté abierto en caso de alguna emergencia o cuando el sistema enfrente algunas actividades sospechosas.

Habiendo otorgado privilegios de administración a su cuenta de acceso remoto, inicie sesión en el servidor remoto con las teclas SSH con privilegios root o sudo. Luego use el siguiente comando para acceder al archivo de configuración del Daemon SSH:

$ sudo gedit/etc/ssh/sshd_config

Con el archivo abierto ahora, busque el directorio 'PasswordAuthentication' y escriba lo siguiente para deshabilitar la autenticación de contraseña y los inicios de sesión SSH basados ​​en contraseña.

$/etc/ssh/sshd_config

Contraseña Autenticación no

Para ver estos cambios en efecto, tendrá que reiniciar el servicio SSHD utilizando el siguiente comando:

$ sudo systemctl reiniciar ssh

Como precaución, abra una nueva ventana de terminal y pruebe que el servicio SSH funciona correctamente antes de cerrar su sesión actual.

Con sus teclas SSH verificadas, debería poder ver que todo funcione como normal. Puede salir de todas las sesiones de servidor actuales.

Conclusión

Ahora que tiene un sistema de autenticación basado en la tecla SSH en su lugar, ya no necesita el sistema de autenticación de contraseña vulnerable, ya que simplemente puede iniciar sesión sin contraseña. Espero que hayas encontrado este tutorial útil.