Cómo copiar las claves SSH

Para comprender mucho mejor nuestro tema, primero debemos discutir qué son las claves SSH. Una clave SSH, también conocida como clave de shell segura, es una frase de contraseña de protocolo de red para SSH. Es auténtico y encriptado, proporcionando un protocolo extremadamente seguro. Se utiliza para permitir que las diferentes máquinas se comuniquen entre sí en una red abierta no segura. Debido a su autenticación, hace que la comunicación sea encriptada y segura. Este protocolo se utiliza para la transferencia remota de archivos y el acceso remoto a los sistemas operativos. Para encontrar la clave SSH, debemos abrir la terminal en nuestro dispositivo y escribir el comando «ls -al ~/.ssh». Este comando nos dice si las claves SSH existentes están allí o no. De la misma manera, podemos usar un comando mientras trabajamos con las claves SSH. El comando se llama comando ssh-copy-id. Este comando nos ayudará a instalar las claves SSH en un equipo remoto o las claves autorizadas del servidor. Nos ayuda con el inicio de sesión con clave SSH, lo que elimina la necesidad de ingresar el ID de inicio de sesión y la contraseña cada vez. El comando SSH forma parte de la herramienta OpenSSH que se utiliza para ejecutar los servicios de gestión en dispositivos remotos mediante conexiones cifradas.
Copia la clave SSH
Antes de comenzar, asegúrese de recordar que las claves SSH constan de una clave pública y una clave privada. La clave pública se comparte con el servidor remoto y se usa para cifrar la conexión, mientras que la clave privada se almacena en su computadora local y se usa para descifrar la conexión. Para copiar una clave SSH en Ubuntu, necesita un par de claves SSH existente. Si no tiene uno, puede generar uno usando el comando ssh-keygen. Ahora creamos un par de claves usando el comando SSH keygen con la opción -t para especificar el tipo de clave a generar (por ejemplo, rsa, dsa, etc.). kalsoom@linux-VirtualBox:~$ ssh-keygen -t rsa Presione Entrar para ejecutar el comando. Después de especificar la ubicación y el nombre del archivo, le asigna una frase de contraseña. Para proteger su clave privada, puede usar una frase de contraseña como un paso de seguridad adicional. Si ingresa una frase de contraseña, se le solicitará cada vez que use la clave para conectarse a un servidor remoto. Es importante utilizar una contraseña fuerte que sea difícil de adivinar. Puede introducir cualquier frase según sus necesidades. En nuestro caso lo mantenemos vacío. Para ello ingresamos «vacío». Después de ingresar estos detalles, obtenemos el siguiente resultado: Generando un par de claves rsa públicas/privadas. Introduzca el archivo en el que desea guardar la clave (/home/linux/.ssh/id_rsa): /home/linux/key.txt/home /linux/key.txt ya existe. ¿Sobrescribir (s/n)? yIngrese la frase de contraseña (en blanco si no hay frase de contraseña): Ingrese la misma frase de contraseña nuevamente: Las frases de contraseña no coinciden. Pruébalo otra vez. Ingrese la frase de contraseña (en blanco si no hay frase de contraseña): Ingrese la misma frase de contraseña nuevamente: Su identificación se guardó en /home/linux/key.txt. Su clave pública se ha almacenado en /home/linux/key.txt.pub. La huella dactilar de la clave es :SHA256:zCpQ+8kEraxbmY90qq9m3JNNt+CEw905MfvSuJbyrps linux@linux-VirtualBoxLa imagen aleatoria de la clave es:+—[RSA 3072]—-+| || . || O . || o + oo || ..+o..S= || o+*=o* || …*B*oB || +++.* o || o+++.EB+o |+—-[SHA256]—–+ El comando ssh-keygen genera dos archivos: un archivo de clave privada (con extensión .pem o .ppk) y un archivo de clave pública (con extensión .pub). Se puede ver en los siguientes archivos de fragmentos llamados «clave» junto con su extensión almacenada en el directorio de inicio.
Una vez que se crea el par de claves, puede usar el comando cat para ver qué contiene la clave pública. La carpeta de inicio contiene la clave pública con el nombre de archivo «key.pub». Para ver el contenido de la clave pública, ingrese el siguiente comando: kalsoom@linux-VirtualBox:~$ cat ~/key.pub
El contenido del archivo de clave pública debe copiarse en su portapapeles. Puede hacerlo resaltando el contenido del archivo y presionando Ctrl+C, o haciendo clic derecho en la ventana del terminal y seleccionando la opción «Copiar». Conéctese al servidor remoto en el que desea copiar su clave usando el comando SSH proporcionando el nombre de usuario y el nombre de host del servidor. Ejemplo: kalsoom@linux-VirtualBox:~$ ssh user@hostname También puede iniciar sesión manualmente en el servidor remoto. Se debe tener cuidado de utilizar el mismo usuario. Abra el archivo de clave autorizado en el servidor remoto después de conectarse. Este archivo se encuentra en el directorio ~/.ssh del servidor. kalsoom@linux-VirtualBox:~$ nano ~/.ssh/authorized_keys Pegue el contenido de su portapapeles en el archivo «authorized_keys» presionando la combinación de teclas Ctrl+V. Asegúrese de que la clave esté en una sola línea y que no haya espacios adicionales ni saltos de línea.
Como podemos ver en el fragmento anterior, no incluimos los espacios adicionales en el archivo porque la autorización generará un mensaje de error. Guarde el archivo authorized_keys presionando Ctrl+X. Luego presione el botón Y y luego presione Entrar. El directorio /.ssh y el archivo /.ssh/authorized_keys deben tener los permisos correctos establecidos después de que la clave pública se haya copiado en el servidor para garantizar que solo los usuarios autorizados puedan acceder a ella. Este comando establece los permisos en el archivo ~/.ssh/authorized_keys para que solo el propietario (usuario) pueda leer y escribir los permisos. Es importante tener en cuenta que los permisos en el directorio ~/.ssh deben establecerse en 700 y los permisos en el archivo ~/.ssh/authorized_keys deben establecerse en 600 para garantizar que la clave privada permanezca segura. Para hacer esto, ejecutamos el comando que se muestra a continuación: kalsoom@linux-VirtualBox:~$ chmod 700 ~/.sshkalsoom@linux-VirtualBox:~$ chmod 600 ~/.ssh/authorized_keys El comando chmod se usa para cambiar los permisos de un archivo o un directorio en Linux. Estos comandos cambian los permisos de los archivos y la carpeta en el directorio específico o las claves_autorizadas, lo que garantiza que solo el propietario tenga acceso a los archivos. Intente conectarse de nuevo al servidor a través de SSH proporcionando el nombre de usuario y el nombre de host del servidor: kalsoom@linux-VirtualBox:~$ ssh user@hostname Si establece una frase de contraseña al crear la clave SSH, se le pedirá que lo haga. Si todo está configurado correctamente, debería poder conectarse al servidor.
Diploma
Aprendimos cómo copiar una clave SSH en Ubuntu. Este proceso es útil si desea configurar un inicio de sesión sin contraseña en un servidor remoto o compartir su clave SSH con un amigo o colega. Tenga en cuenta que existen muchas variaciones de este procedimiento según las necesidades de su escenario.