HowTo:Conexión SSH sin password con ssh-keygen y ssh-copy-id
Siempre es bueno conocer el método para conectarte a los servidores sin escribir la clave, nos permite automatizar tareas y es necesario en los scripts para hacer conexiones a host remotos. En este post explicamos como crearlo con ssh-keygen y posteriormente copiarlo de forma segura con ssh-copy-id
Es algo extremadamente sencillo de hacer como se comprueba a continuación.
1 creamos las claves privadas y públicas con ssh-keygen en el host
m3t4g4m3@nexolinux ~ $ ssh-keygen Generating public/private rsa key pair. Enter file in which to save the key (/home/m3t4g4m3/.ssh/id_rsa): miclave Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in miclave. Your public key has been saved in miclave.pub. The key fingerprint is: 12:bb:4e:cc:04:6c:47:28:ad:5e:f1:04:c0:b2:94:b1 m3t4g4m3@nexolinux The key's randomart image is: +--[ RSA 2048]----+ | o+o.o. | |.o+.+.. | |.E o++o | |. ...o.o | | . . + S | | . + o | | = | | o | | . | +-----------------+
Como nota curiosa, al crearlo en LinuxMint me generá esta imagen al azar, algo que no había visto en distros como Debian, CentOS, o Red Hat
Así tendremos la clave pública y privada (la cual no debe salir de nuestro equipo, siempre se queda en el equipo que la crea)
m3t4g4m3@nexolinux ~ $ ls miclave miclave.pub
2 Copiar la clave pública a un equipo remoto con ssh-copy-id
m3t4g4m3@nexolinux ~ $ ssh-copy-id -i ~/.ssh/id_rsa.pub hostremoto
password
Con lo que meterá la clave en /home/m3t4g4m3/.ssh/authorized_keys
m3t4g4m3@hostremoto ~ $ cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys
Hay que destacar que la añade a las claves existentes no lo sobreescribe.
m3t4g4m3@nexolinux ~ $ ssh hostremoto
Last login: Sun Feb 17 11:21:33 2013 from 192.168.1.33
m3t4g4m3@hostremoto $
Deja un comentario