jueves, 25 de marzo de 2010

Uso Simplificado de SSH

SSH es una herramienta indispensable cuando estas usando varios sistemas. Con ssh puedes logearte a otro sistema remoto y trabajar como si estuvieras sentado en frente de este. Inclusive si alguno de tus sistemas estan detras de un firewall puedes conectarte con ssh, pero para lograrlo se requiere un numero de opciones en el comando y si tienes varios sistemas tendrías mas dificultad en recordarlos. Sin embargo, no es necesario que los memorices, al menos no mas de una vez, puedes agregarlos en el archivo de configuración de ssh y tenerlos listos.

Por ejemplo, supón que tienes 2 servidores a los cuales te conectas regularmente, el que esta en tu casa esta detras de un firewall. Ademas, supón tambien que usas dydns para acceder a tu direccion IP y tienes al shh escuchando en el puerto 12022 en vez del puerto por defecto que es el 22 (y tu firewall reenvia ese puerto a tu servidor). Entonces para conectarte necesitas ejecutar lo siguiente:

$ ssh -p 12022 ejemplo.dyndns.org

El segundo sistema es local y te conectas así:

$ ssh 192.168.1.15

El segundo no estan difícil de recordar, pero con un nombre seria más fácil. Puedes poner un nombre en el archivo /etc/hosts o puedes configurar un servidor DNS local, pero tambien puedes resolver el problema usando el archivo de configuracion de ssh.

Para crear un archivo de configuración ssh ejecuta el siguiente comando:

$ touch ~/.ssh/config
$ chmod 600 ~/.ssh/config

Ahora usa tu editor de texto favorito para editar el archivo e ingresa lo siguiente:

Host server1
HostName ejemplo.dyndns.org
Port 12022

Host server2
HostName 192.168.1.15

La opción "Host" inicia una nueva sesion, todas las opciones que siguen aplican a ese nuevo host hasta que una nuevo "Host" aparezca. La opción "Hostname" especifica el nombre real del host que ssh intentara conectarse. La opción "Port" obviamente indica el puerto al que va a conectarse.

Ahora te puedes conectar de una forma mas simple:

$ ssh server1
$ ssh server2

Estas son algunas de las opciones que puedes configurar en el archivo de configuración de ssh. Por ejemplo tambien puedes especificar si se habilita el acceso a X11. Puedes configurar un puerto de reenvio local y remoto. Echa una mirada a la pagina man (man ssh_config) para mas información sobre las opciones disponibles.

No hay comentarios: