Crear un Usuario de Demostración y Generar un Par de Claves RSA
En este paso, primero crearás una cuenta de usuario dedicada para demostrar la autenticación por clave pública SSH y, posteriormente, generarás un par de claves criptográficas RSA. Este enfoque garantiza un entorno limpio para la demostración sin interferir con las configuraciones de usuarios existentes.
Crear el Usuario de Demostración
Primero, vamos a crear un nuevo usuario llamado sshuser que utilizaremos para nuestra demostración de SSH:
sudo adduser sshuser
El sistema te pedirá que establezcas una contraseña y proporciones información del usuario. Para este laboratorio, utiliza password123 como contraseña. Puedes presionar Enter para omitir los campos opcionales (Nombre completo, número de habitación, etc.).
Adding user `sshuser' ...
Adding new group `sshuser' (1001) ...
Adding new user `sshuser' (1001) with group `sshuser' ...
Creating home directory `/home/sshuser' ...
Copying files from `/etc/skel' ...
New password:
Retype new password:
passwd: password updated successfully
Changing the user information for sshuser
Enter the new value, or press ENTER for the default
Full Name []:
Room Number []:
Work Phone []:
Home Phone []:
Other []:
Is the information correct? [Y/n] Y
Generar el Par de Claves RSA
Ahora, cambia a la cuenta sshuser para generar el par de claves. Esto asegura que las claves se creen en el directorio personal del usuario correcto:
sudo su - sshuser
Ya estás operando como sshuser. Genera un par de claves RSA utilizando el comando ssh-keygen. El parámetro -t especifica el tipo de clave a crear, que en este caso es rsa.
ssh-keygen -t rsa
Tras ejecutar el comando, se te preguntará por la ubicación para guardar las claves. La ubicación predeterminada es ~/.ssh/id_rsa, que se encuentra dentro de un directorio oculto llamado .ssh en la carpeta personal del usuario. Presiona Enter para aceptar esta ubicación por defecto.
Generating public/private rsa key pair.
Enter file in which to save the key (/home/sshuser/.ssh/id_rsa):
A continuación, se te pedirá que introduzcas una frase de paso (passphrase). Una frase de paso añade una capa extra de seguridad a tu clave privada. Para este laboratorio, utilizaremos sshkey-password como frase de paso. Deberás introducirla dos veces.
Nota: Cuando escribas la frase de paso, no verás ningún carácter en la pantalla. Esta es una medida de seguridad estándar en sistemas Linux.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/sshuser/.ssh/id_rsa
Your public key has been saved in /home/sshuser/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:<FINGERPRINT_STRING> sshuser@ubuntu
The key's randomart image is:
+---[RSA 3072]----+
| .. . .o.. |
| . . . o.. |
| . . = . . |
| . B o . |
| S= * . |
| o*B o . |
| .oO=B . . |
| .o+*+oE. . |
| .o*o=o.o. |
+----[SHA256]-----+
Una vez generadas las claves, puedes verificar que los archivos se crearon correctamente. Utiliza el comando ls -l para listar el contenido del directorio ~/.ssh:
ls -l ~/.ssh
Deberías ver una salida similar a la siguiente, mostrando tus nuevos archivos de claves:
total 8
-rw------- 1 sshuser sshuser 2610 Jun 30 10:30 id_rsa
-rw-r--r-- 1 sshuser sshuser 575 Jun 30 10:30 id_rsa.pub
Presta atención a los permisos de los archivos. La clave privada id_rsa tiene permisos de lectura/escritura solo para el propietario, mientras que la clave pública id_rsa.pub puede ser leída por otros. Es fundamental proteger tu clave privada y nunca compartirla.