Paso a paso con E2
SSH, un protocolo fiable para conexiones remotas
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 HTTPSpara 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.
Así pues, el primer paso es instalar el servidor. Opciones hay varias, aunqueCopSSH es una buena propuesta. Está disponible en www.itefix.no/i2/copsshy 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.
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.
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.
Paso 4. Prueba WinSCP
Otra forma de acceder remotamente a un equipo es mediante WinSCP. Se trata de una aplicación para Windows que permite acceder a un equipo mediante una conexión segura SSH, aunque también admite otros protocolos menos seguros. Para el caso que nos ocupa, el procedimiento pasa por instalar el software WinSCP que se descargue de la página web e introducir los parámetros correspondientes a la IP o nombre del servidor remoto con el que se va a conectar, así como el nombre de usuario y contraseña. Recuerda que este usuario debe ser dado de alta en el panel de control de CopSSH, así como definir el tipo de consola de comandos (que por lo general es bash).
La interfaz de WinSCP es gráfica, con una buena carga de menús contextuales que se abren usando el botón derecho del ratón al seleccionar archivos o carpetas. Muchas de estas operaciones son comunes con las que se pueden abordar desde PuTTy, aunque desde una perspectiva más visual. La ventaja es que es muy sencillo realizar operaciones con archivos, ya sea en el ordenador remoto o entre el equipo local y el remoto.
No es posible lanzar aplicaciones directamente, como se haría con una conexión RDC (Remote Desktop Connection), pero se pueden realizar muchas operaciones de mantenimiento. Además, si se tiene instalado PuTTY, es posible abrir una consola de comandos directamente desde la interfaz de WinSCP.
Paso 5. Qué pasa con Mac
La conexión mediante SSH con un Mac OS X es mucho más sencilla que con Windows. Directamente, el servidor SSH está preinstalado por defecto y no es necesario nada más, así que desde un cliente SSH en otra máquina remota solo hay que introducir los parámetros del servidor sobre IP, usuario y contraseña.
La consola de comandos es idéntica a la que se tiene con una conexión con Windows, pero las posibilidades son mayores al tratarse de un entorno basado en Unix nativamente. En este caso, para sacar el máximo partido a la conexión, lo más apropiado sería interesarse por el manejo de un sistema Apple desde la línea de comandos. Un punto de partida podría ser estess64.com/osx/, con una referencia de comandos disponibles y una breve explicación.
También es factible conectarse a un equipo Mac con WinSCP desde un ordenador remoto, con lo que se dispondrá de una interfaz visual para el manejo de archivos y carpetas, como sucedía en el caso de Windows.
0 comentarios :
Publicar un comentario