$ ssh-keygen -t rsa
Enter file in which to save the key (/home/demo/.ssh/id_rsa):Nota: Si no escribimos nada y pulsamos la tecla
«Intro»
, la clave se almacenará en la ruta que aparece entre paréntesis.Enter passphrase (empty for no passphrase):Si no queremos usar una contraseña, podemos dejarlo en blanco como se indica entre paréntesis y pulsar
«Intro»
. Sin embargo, es recomendable incluirla para añadir una capa de seguridad adicional. De este modo, aunque algún ciberdelincuente consiguiera la clave, no podrían hacer uso de ella mientras no diera con la contraseña. El único inconveniente de crear una contraseña es que habría que escribirla cada vez que se utilizara. Por supuesto, lo más recomendable es crear siempre contraseñas seguras.ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/demo/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/demo/.ssh/id_rsa. Your public key has been saved in /home/demo/.ssh/id_rsa.pub. The key fingerprint is: 4a:dd:0a:c6:35:4e:3f:ed:27:38:8c:74:44:4d:93:67 demo@xyz.local The key's randomart image is: +--[ RSA 2048]----+ | .oo. | | . o.E | | + . o | | . = = . | | = S = . | | o + = + | | . o + o . | | . o | | | +-----------------+
«autorized_keys»
en el servidor virtual con la instrucción «ssh-copy-id»
. ssh-copy-id user@123.45.67.89Otra alternativa es pegar la clave utilizando SSH:
cat ~/.ssh/id_rsa.pub | ssh user@123.45.67.89 "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"Independientemente del comando que utilicemos, deberíamos ver algo parecido a esto:
The authenticity of host '12.34.56.78 (12.34.56.78)' can't be established.
RSA key fingerprint is b1:2d:33:67:ce:35:4d:5f:f3:a8:cd:c0:c4:48:86:12.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '12.34.56.78' (RSA) to the list of known hosts.
user@12.34.56.78's password:
Now try logging into the machine, with "ssh 'user@12.34.56.78'", and check in:
~/.ssh/authorized_keys
to make sure we haven't added extra keys that you weren't expecting.
«PermitRootLogin»
y la modificamos para asegurarnos de que solo se pueda acceder usando las claves SSH:PermitRootLogin without-passwordPor último, recargamos SSH para que se efectúen los cambios:
reload sshUna vez completados todos los pasos, dispondremos de una máquina virtual más segura y solo podremos acceder a ella si disponemos de las claves SSH generadas. Asimismo, para más seguridad, antes de cerrar la sesión SSH, deberíamos probar la conexión desde otro terminal para verificar que funciona correctamente.
Please wait... it will take a second!