5 de agosto de 2008

Hamachi

Hamachi es una aplicación gratuita configuradora de redes privadas virtuales capaz de establecer vínculos directos entre computadoras que están bajo firewalls de NAT sin requerir reconfiguración alguna (en la mayoría de los casos), en otras palabras, establece una conexión a través de Internet para crear un entorno virtual que simula una red de área local formada por ordenadores remotos. Actualmente está disponible la versión para Microsoft Windows y la versión beta para Mac OS X y Linux.[1]

Pues eso, hamachi permite que los usuarios sin conocimientos técnicos ni nada parecido puedan crear sus propias VPN y conectarse a ellas sin necesidad de abrir puertos en el firewall, enredarse con el NAT ni nada "fastidioso".

El software puede ser descargado de la página oficial y se instala fácilmente, pero esa no es la razón por la que escribo este post, la razón es la creación de un script para linux que permite que hamachi se ejecute como un servicio.

Primero y principal, necesitas poner los archivos de configuracion de hamachi en un directorio global a diferencia de tu directorio /home. hamachi-init crea scripts en el directorio home dentro de una carpeta llamada .hamachi por defecto, pero nosotros especificaremos como directorio de configuración /etc/hamachi. Para esto ejecutamos:

hamachi-init -c /etc/hamachi

Luego necesitamos crear un script para iniciar hamachi, usa el editor de texto de tu preferencia y crea un archivo llamado hamachi-start y copia lo siguiente.

#!/bin/sh

hamachi_start() {
echo "Starting hamachi..."
/sbin/tuncfg
/usr/bin/hamachi -c /etc/hamachi start
}

hamachi_stop() {
echo "Stopping hamachi..."
killall tuncfg
/usr/bin/hamachi -c /etc/hamachi stop
}

hamachi_restart() {
hamachi_stop
sleep 1
hamachi_start
}

case "$1" in
'start')
hamachi_start
;;
'stop')
hamachi_stop
;;
'restart')
hamachi_restart
;;
*)
hamachi_start
esac

Guárdalo en la carpeta /usr/bin y otórgale permisos de ejecución:

chmod a+x /usr/bin/hamachi-start

Ahora editamos el archivo /etc/rc.local (haz un backup antes de "meterle mano" al archivo)

Al final del archivo agrega las siguientes lineas:
if [ -x /usr/bin/hamachi-start ]; then
. /usr/bin/hamachi-start
fi


Ahora los comandos básicamente son los mismos con una pequeña diferencia, cada vez que se invoca un comando de hamachi, se tiene que especificar la localizacion del archivo de configuración con la opción -c.

hamachi -c /etc/hamachi set-nick nickname
hamachi -c /etc/hamachi login
hamachi -c /etc/hamachi create nombre_red clave
hamachi -c /etc/hamachi join nombre_red clave
hamachi -c /etc/hamachi go-online nombre_red
hamachi -c /etc/hamachi list
hamachi -c /etc/hamachi go-offline nombre_red




[1] http://es.wikipedia.org/wiki/Hamachi

No hay comentarios.:

Publicar un comentario