CONEXIONES SEGURAS “servidor OpenSsh en Linux _ cliente Windows”





En pasadas ocasiones hemos visto como configurar un servidor ssh en Windows para permitir que a él se conecten usuarios de forma segura autenticándolos con claves públicas generadas en los clientes, garantizando confianza pues además de cifrar la comunicación, evita que los datos referentes a las cuentas de usuarios locales sean transmitidos constantemente en la red. A continuación implementaremos el mismo servidor OpenSsh en un sistema Linux “UBUNTU”.


1- Desde los repositorios de Ubuntu podemos descargar el paquete servidor y cliente de OpenSsh los cuales nos dotaran de las diferentes herramientas para establecer la conexión cifrada.


2- Ahora editaremos el archivo de configuración del servidor, aquí se especificaran las rutas de ficheros y claves con las que el servidor ejecutara las políticas definidas para la conexión segura desde clientes remotos a la maquina local en configuración.

Nos aseguramos que luzca similar al que mostramos a continuación según las rutas y configuraciones del sistema, entre las variables más importantes de este archivo encontramos, la versión de protocolo en la que corre el servidor (Protocol 2), los formatos en los que se leerán las peticiones “dsa_rsa” (ssh_host_rsa_key), las rutas del archivo donde se encontrarán las claves públicas de quienes intentaran iniciar sesión remotamente (authorized_keys) y la habilitación o no de los métodos de autenticación que soportara el servidor (RSAAuthentication yes) ó (RhostsRSAAuthentication no).

linux_ssh


3- Ahora crearemos el archivo que especificamos en el anterior punto “authorized_keys”, donde se almacenarán las claves públicas RSA que de los clientes hacia el servidor lleguen.

4- En este momentos tenemos casi la totalidad del servidor ssh en Linux corriendo, por el momento iremos al cliente es esta caso Windows y generaremos el par de claves RSA, si no las tiene, la pública que será remitida a este servidor y la privada con la que se quedara él para descifrar la información que desde este equipo sea cifrada y enviada, esto lo haremos en la ruta de OpenSsh/bin con el comando respectivo, algo como:
C:\Archivos de Programas\OpenSsh\bin> ssh-keygen -t rsa

Recordamos aceptar la ruta por omisión e ingresar el “passphrase” ó frase contraseña

5- Al tenerlas listas nos dirigimos a la ruta de origen para comprobar y enviamos la clave pública con el siguiente comando:

C:\Document and Settings\Admin\.ssh>scp id_rsa.pub [user]@[IP_remotoa]:[ruta_file.pub]

Nos pedirá la contraseña del usuario al cual queremos enviar el archivo (la local en ese equipo) y nos indicara si la transferencia fue exitosa o no.


6- Regresamos al servidor en UBUNTU y nos cercioramos que el archivo se encuentre disponible en la ruta designada (/home/sena/cliente3.pub).


7- Ahora copiamos la clave pública del cliente Windows que se encuentra en el archivo enviado anteriormente, a “authorized_keys” designado por el servidor OpenSsh para almacenar dichas claves. #cat cliente3.pub > /etc/ssh/authorized_keys

8- Nos aseguramos que la clave quedo copiada en su totalidad en dicho archivo.

#more authorized_keys



9- Teniendo las rutas y los archivos configurados y poblados correctamente, procedemos a reiniciar el servidor SSH para que los cambios realizados sean tomados. #/etc/init.d/ssh restart

10- Solo nos queda probar que el servidor SSH este corriendo correctamente y lo haremos tratando de iniciar la sesión remota desde el cliente Windows con uno de los usuarios del servidor,


Si es requerida la clave RSA quiere decir que la implementación se ha realizado con éxito, solo nos queda ingresar el “passphrase” de las claves y podremos visualizar la terminal del servidor SSH Linux.



1 comentarios:

lunatico dijo...

Hola Alejandro antes que nada muchas gracias por el aporte.
Me fue muy util.Muy bueno el blog.