Home

Conectar por SSH (con seguridad rsa) desde Windows a LINUX Ubuntu Server (variante 1)

webmaster's picture

Este artículo explica como generar claves de autenticacion RSA con codificación rsa o dsa para conectar por ssh utilizando Putty desde windows XP o windows 7 a un Servidor LINUX, en nuestro caso Ubuntu  Server 12.04.3 LTS.

Primeramente situados en el LINUX Server generamos las claves del usuario al cual le vamos a asignar los permisos de conexión via SSH. Estando situado en la carpeta del usuario en nuestro caso /home/lazaro/ utilizamos el comando para generar las claves de autentificacion del mismo por ssh de la siguiente forma

# ssh-keygen -t rsa

Esto genera dos ficheros de claves encriptadas dentro de la carpeta /home/<nombre_usuario>/.ssh

id_rsa: Clave privada para ese usuario que deberá utilizar desde otra maquina linux para conectar al servidor o convertirla en una maquina windows si desde esta se quiere conectar al servidor LINUX

id_rsa.pub: Clave publica que deberá ser incorporada al fichero authorized_keys que deberá crearse para ese usuario en la misma carpeta /home/<nombre_usuario>/.ssh

El siguiente paso es generar un fichero con el nombre authorized_keys dentro de la /home/<nombre_usuario>/.ssh e incorporar la clave publica a fichero ese fichero

# cd /home/lazaro/.ssh/
# touch authorized_keys
# cat id_rsa.pub >> authorized_keys

Antes de pasar a la maquina cliente debemos comprobar de que nuestro servidor Openssh esta correctamente configurado para la recepcion de conexiones ssh2. Para ello editamos (con permiso de superusuario) el contenido del fichero de configuracion /etc/ssh/sshd_config

# cd /etc/ssh/
# sudo nano sshd_config

dejar descomentado RSAAuthentication, quedando de la siguiente forma:

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile %h/.ssh/authorized_keys

Por ultimo reiniciar el servicio

sudo service ssh restart

Ahora necesitamos convertir la clave privada del usuario id_rsa a formato legible por el Putty.exe y que la utilice para la conexión ssh2 en el momento que se vaya a conectar a la maquina servidora. Para ello debemos realizar una copia de la clave privada a un directorio accesible desde un cliente FTP (se puede usar winscp o sftp o cualquier otra herramienta que usemos habitualmente) para poderla descargar a la maquina windows.

Una vez tengamos el id_rsa en nuestra maquina local, situada en la misma carpeta del puttyge.exe y que el resto de utilidades abrimos el programa

Nos pedirá la passfrase que hemos introducido en el momento que creamos las claves en el LINUX Server y si la importación se realiza con exito nos saldrá la confirmación y el aviso de que podemos gurdar la clave privada en formato compatible con PuTTY.

Le damos al botón de “Save private key” y la guardamos en nuestro pc, en la misma carpeta donde esta el putty.exe. En nuestro caso el file privatekey.ppk es que se utilizará patra conectarse con el PuTTY al LINUX Server.

Conectarse  con el Putty

Para conectarse desde windows hay que hacer algunos ajustes en el clientes ssh PuTTy para que todo funcione perfectamente. Primeramente pondremos la ip del servidor LINUX

Posteriormente hay que indicarle donde esta la clave privada que hemos guardado en un sitio seguro de nuestro pc. Vamos al menú Connection -> SSH ->Auth y en la opcion: “Private key file for authentication” buscamos y seleccionamos la clave privada.

Después hay que decir con que usuario queremos que haga “auto-login” para no tener que teclear nuestro usuario, seguire con el ejemplo de lazaro.

Vamos al menu: Connection-> Data y en en menu auto-login username, ponemos nuestro usuario con el que queremos logear y para el que hemos creado las claves RSA, en este ejemplo lazaro

Salvamos toda la configuración y ahora cuando pulsamos en Open nos logea directamente en nuestro servidor LINUX sin tener que teclear usuario ni contraseña.

Observaciones.

En algunos la conversión de la clave privada por el puttygen.exe no es del todo correcta y puede convertise mal en la maquina windows y una vez que hemos realizado todo el proceso anteriormente mencionado y utilizar el putty.exe para conectarnos, nos da un error "server refused our key"

Para solucionar este problema vuelva a realizar este proceso paso a paso teniendo en cuenta que no se ha saltado ningun paso o recurra al artículo Conectar por SSH (con seguridad rsa) desde Windows a LINUX Ubuntu Server (variante 2)  que le explica otra forma de hacer lo mismo y que también funciona aunque este metodo es más aconsejable para dar acceso a varios usuarios de forma rápida.

Fuente: 

Centro Practico - LEMURSOLUTION

Contacto: 
webmaster