Friday, December 12, 2008

SSH sin password y en puerto no estandar

Si necesitamos hacer sftp o ssh a una maquina remota sin tipear el password cada vez que queremos ingresar, hacemos lo siguiente:

ssh-keygen -t rsa

y le damos enter a TODO lo que pregunta (incluso el password, lo dejamos en blanco).

Esta operacion genera una llave publica y privada para nuestra maquina, entonces ahora lo que tenemos que hacer es copiar la llave publica a la maquina remota.
Ademas, de esta forma podemos copiarla via un puerto no estandar, como el 5678 en mi caso:

ssh-copy-id -i ~/.ssh/id_rsa.pub "-p 5678 root@192.168.1.2"

Donde logicamente la maquina remota es 192.168.1.2 y el usuario remoto con el que nos interesa loguearnos es root.

Cabe aclarar que hay dos formas de generar las llaves, una es con el algoritmo DSA y otra con el RSA y se prefiere este ultimo ya que es mucho mas seguro.

Las llaves en la maquina remota quedan almacenadas en:

~/.ssh/authorized_keys2 para llaves RSA.
~/.ssh/authorized_keys para las viejas llaves DSA.

Como dato adicional agrego como conectar con SFTP y SSH en este puerto no estandar:

sftp "-oPort=5678" 192.168.1.2
ssh "-oPort=5678" 192.168.1.2


Saludos !

No comments:

Followers

About me

Santa Fe, Argentina
Programador Web, PHP, MySQL, JQuery, Administrador Linux. LAMP, Lighttpd, Nginx.