Paso a paso

SSH, un protocolo fiable para conexiones remotas

La generalización de la movilidad hace que proliferen las estrategias para conectarse remotamente con otros equipos que alojan nuestros datos. En este marco, la fiabilidad de la conexión es vital

Manuel Arenas

22 agosto 2011

En los comienzos de Internet, nadie pensaba en seguridad. Aquella red conectaba esencialmente a cuatro científicos visionarios que poco tenían que ocultar y menos interés tenían en hackear los datos o conexiones de sus colegas.

Así surgió el correo electrónico, por ejemplo, donde la seguridad brillaba por su ausencia, con consecuencias nefastas décadas después, cuando se sigue usando de manera exhaustiva sin apenas modificar el protocolo empleado y sin introducir medidas de seguridad salvo las que se implementen a través de soluciones de terceros.

Con las conexiones remotas sucede algo similar, con un protocolo de conexión sumamente inseguro en sus orígenes como era Telnet. Éste precisa de un servidor de conexión remota en un equipo y un cliente de conexión en el otro desde donde se inicie la sesión a través de Internet, ya sea en el ordenador de al lado o en un equipo a miles de kilómetros de distancia. Básicamente, es un sistema donde los datos se mueven sin encriptar, de modo que cualquiera que intercepte los paquetes de bits, podría recuperar toda la sesión de conexión, incluyendo contraseñas, datos personales o corporativos...

Para evitarlo, se crearon sistemas alternativos de conectividad remota segura. Desde HTTPS para las páginas web hasta las conexiones remotas virtuales VNC, pasando por SSH. Este último es uno de los más asequibles para su tratamiento en un artículo práctico. Es más limitado, pero más fácil de implementar.

NIVEL:AVANZADO

Paso 1. Instala el servidor

La idea es conectar remotamente con un equipo a través de una conexión de red, sea local o a través de Internet. En este caso, trabajaremos a nivel local, aunque se puede extender la idea con solo usar la dirección IP del router ADSL o el cable módem y configurar los puertos necesarios para que la conexión «atraviese» el firewall del router y alcance al ordenador donde se haya instalado el servidor SSH.

Protocolo SSH 1

Así pues, el primer paso es instalar el servidor. Opciones hay varias, aunque CopSSH es una buena propuesta. Está disponible en www.itefix.no/i2/copssh y no solo instala el servidor como tal, sino también Cygwin, un entorno de línea de comandos mediante el cual se puede acceder remotamente a un equipo Windows desde clientes SSH estándar como PuTTy.

La instalación pasa por ejecutar el archivo EXE y definir una contraseña de paso para configurar la clave de encriptación. Después, hay que activar los usuarios, o el usuario, desde los cual se accederá remotamente al equipo. Para ello, se necesita ejecutar el asistente 01 Activate a User, desde donde elegir a uno o más usuarios con permiso para acceder mediante SSH al equipo. También desde aquí definiremos el tipo de consola de comandos que se encontrará el usuario al autenticarse frente al equipo. La más habitual es /bin/bash.

Paso 2. Establece la sesión remota

Una vez instalado el servidor junto con el minientorno Linux Cygwin en el equipo al que se quiere acceder remotamente, llega el momento de elegir un cliente desde el cual hacerlo. Existen distintas formas de acceder a un equipo mediante SSH, bien a través de la interfaz de consola de comandos, bien gracias a una interfaz gráfica para manejar archivos.

Para la interacción mediante línea de comandos, uno de los clientes más utilizados es PuTTy. En la sección de descargas, se pueden encontrar diferentes versiones, aunque la mejor es la denominada A Windows installer for everything except PuTTYtel, que instala todas las aplicaciones usuales para el acceso remoto a un equipo.

Protocolo SSH 2

Al ejecutar el software, tendremos la oportunidad de configurar la conexión remota, en la que el parámetro más relevante es la dirección IP o el nombre del servidor remoto (que en el caso de un usuario doméstico será habitualmente un nombre de dominio dinámico del estilo DynDNS). Por defecto, Putty está preconfigurado para la conexión SSH, usando el puerto 22. Como nombre de usuario y contraseña que se pedirá al iniciar la sesión remota, se debe usar una combinación que previamente se haya dado de alta en el Paso 1 en CopSSH.

Paso 3. La consola de comandos

Cuando nos hayemos en el entorno Cygwin, que emula una consola de comandos Linux sobre Windows, ya podremos decir que estamos «dentro» del sistema remoto. Una vez en la consola, las posibilidades son limitadas al no disponer de una interfaz gráfica, pero se pueden realizar tareas de mantenimiento de archivos, como copiar, mover, cambiar permisos o incluso trabajar con documentos de texto en editores sin interfaz gráfica.

Protocolo SSH 3

Como paso esencial, hay que identificar las unidades de disco de Windows, lo que se consigue sin más que teclear mount en la consola de comandos. Para introducirse en el manejo básico de la consola de comandos Linux, un buen punto de partida es la página de Cygwin, donde hay secciones dedicadas a la documentación sobre el uso de la consola. Cygwin es un entorno Linux sobre Windows mucho más completo que el que se instala por defecto con CopSSH y por sí solo merecería un artículo comentando las posibilidades que ofrece para integrar Linux y Windows.

Temas Relacionados
Loading...