Cuando se trabaja de manera remota, es necesario ingresar de forma segura a clientes de red o incluso a un servidor. Muchas veces, requerimos realizar este tipo de conexiones para respaldar los archivos de una red, siendo de vital importancia utilizar un sistema seguro que proteja los datos e impida que usuarios no autorizados puedan acceder a éstos. Una de las maneras de realizar este tipo de tarea, sin tener que ir adicionando claves de acceso, es utilizar una llave de acceso SSH. En el siguiente tutorial, veremos cómo crear llaves de acceso en Windows.
Preparando el terreno
SSH es uno de los protocolos más seguros para gestionar y administrar equipos remotos, ya que permite cifrar los datos para evitar que usuarios no autorizados tengan acceso a los datos que se transfieren entre los equipos en los cuales estamos trabajando. Para obtener una comunicación rápida, segura y fluida, se utilizan llaves de autentificación y acceso privadas en nuestros ordenadores.
El inconveniente que existe en máquinas que utilizan el sistema Windows, es que no se puede utilizar OpenSSH para generar dichas llaves, lo que complica un poco el procedimiento. Afortunadamente, existen dos herramientas que nos permitirán realizar dicha tarea: Putty (con esta herramienta realizaremos la conexión remota segura) y Puttygen (con esta herramienta generaremos las llaves).
Preparando las herramientas de trabajo
El primer paso que vamos a dar para crear nuestras llaves de acceso SSH, es descargar las herramientas que vamos a utilizar durante el proceso.
El cliente Putty SSH lo podemos descargar desde su sitio oficial, al igual que el generador de llaves de acceso Puttygen. Una vez descargados estos dos programas, procedemos a instalarlos en el sistema, y es momento de comenzar nuestra creación de llaves de acceso.
Creando las llaves con Puttygen
Para comenzar a crear las llaves, abrimos la aplicación Puttygen y hacemos clic en el botón “Generate” (Ver figura 3).
Ahora, la aplicación nos pedirá que movamos el puntero del mouse sobre el área de la caja que se encuentra debajo de la orden inicial, una vez hecho esto, comenzará a crear datos aleatorios para la creación de la llave (Ver figura 4).
Creando las llaves con Puttygen
Una vez generada la llave privada de acceso en el paso anterior, es momento de guardarla. Para hacerlo, ingresamos una frase de seguridad que es similar a una clave de acceso (que debemos recordar, es recomendable anotarla). Una vez ingresada la frase de seguridad, guardamos los cambios (Ver figura 5).
Ahora, es momento de guardar la llave pública que vamos a instalar en el servidor. Para hacerlo, hacemos clic con el botón derecho del mouse sobre la caja que contiene la llave y elegimos la opción “Seleccionar todo” (Ver figura 6).
A continuación, debemos copiar lo seleccionado utilizando el menú emergente y la opción copiar. Tomamos estos datos, los pegamos en un bloc de notas y los guardamos para utilizarlos en la configuración del servidor. Importante: No utilizar el botón “Save public Key”, ya que generará líneas extras de SHH que pueden generar problemas durante la configuración (Ver figura 7).
Instalando la llave pública recién creada en el servidor
Para instalar la llave pública, debemos estar en el servidor (Linux) e ingresar como usuario propietario del $HOME. Una vez hecho esto, es momento de ingresar la llave en el usuario correspondiente. Para ello, realizamos las siguientes tareas en la línea de comandos, donde usuario es el nombre de usuario al que vamos a asignar la llave pública:
pwd /home/usuario
Ahora, es momento de crear el directorio SHH:
mkdir .ssh
Seguidamente, ingresamos la llave pública en authorized_keys de la siguiente manera:
joe .ssh/authorized_keys
Al ingresar este comando, se abrirá el editor joe. Luego, adicionamos el siguiente comando:
ssh-rsa ASDFAS..ASFSD= cualquier cosa <SALTO DE LINEA>
El <salto de línea> significa que damos enter, es decir, que lo copiamos del Puttygen. Debe quedar todo en una sola línea, en authorized_keys, es fundamental para que funcione..
Instalando la llave pública recién creada en el servidor
Ya tenemos casi todo listo, sólo resta otorgar los permisos de ejecución necesarios a las llaves que acabamos de crear. Para ello, debemos realizar las siguientes tareas en la línea de comandos:
chmod 600 .ssh/authorized_keys
chmod 700 .ssh
Lo que hicimos en el paso anterior, fue dar permisos de ejecución, lectura y escritura a los archivos de los usuarios propietarios de dichos archivos, y permisos de lectura y escritura a los usuarios de authorized_keys.
Probando las llaves de acceso
Es momento de realizar la tan esperada prueba de las llaves de acceso, directamente desde el equipo cliente (el que tiene Windows). Para realizar esta tarea, vamos a ejecutar Putty y una vez abierto, ingresamos el host y el puerto del servidor que acabamos de configurar (debe ser del servidor a trabajar y no los datos del ejemplo, ver figura 11).
Seguidamente, ubicamos SSH, opción Auth en la parte izquierda del área de trabajo y cargamos la llave privada desde la ubicación en la cual la habíamos guardado (Ver figura 12).
Ahora, ingresamos el login del usuario con el cual nos logearemos en la opción Connection/Data de la parte izquierda del área de trabajo (Ver figura 13).
Finalmente, ubicamos la opción “Session” de la parte izquierda de la ventana para adicionar un nombre de sesión, y guardamos los datos haciendo clic en el botón “Save”. Sólo resta iniciar la conexión, haciendo clic en el botón “Open” para ingresar a la sesión y ya estaremos completamente conectados.