Hamachi es una aplicación gratuita (freeware) que permite crear redes privadas virtuales (VPN), esto es: simular redes locales a través de Internet, sin requerir configuración.
En esta mini guía o mini manual voy a describir los pasos que yo he seguido para instalar Hamachi en mi Kubuntu 11.10 (y también en un Ubuntu Server 11.10) como servicio que arranca automáticamente antes de iniciar sesión, y en caso de caída de la red y/o Internet se reconecte solo.
Para instalar Hamachi en Ubuntu primero hay que asegurarse que tenemos instalado el soporte de IP Tunnelling en el kernel, normalmente siempre está instalado, sino lo está no podremos continuar.
Si al ejecutar
no sale nada, significa que sí lo tenemos instalado.
Ahora tenemos que comprobar que está creada la carpeta de tunnelling en /dev con el comando:
Si sale un mensaje que dice que no existe el fichero o directorio, hay que crearla así:
Para x86_64 bits será necesario instalar:
Para x86_32 bits:
Ahora pasamos a instalar Hamachi:
Descargamos la última versión de http://files.hamachi.cc/linux/. Cuando escribí el post la última versión era http://files.hamachi.cc/linux/hamachi-0.9.9.9-20-lnx.tar.gz.
Nos vamos al directorio donde lo hemos descargado, extraemos el contenido del fichero, y nos vamos a dicha carpeta extraída:
E instalamos Hamachi:
Nota: En caso que alguna de las dos líneas anteriores fallen al ejecutarse (por ejemplo en Ubuntu Server ocurre) debemos hacer:
Con esto ya lo tenemos instalado, ahora tenemos que configurar los permisos de usuarios.
Nos creamos un usuario para Hamachi que podamos iniciarlo solo como miembros del grupo hamachi.
Creamos el grupo hamachi:
Añadimos nuestro usuario al grupo hamachi (sustituye usuario por el nombre de tu usuario en Ubuntu):
Añadimos el usuario root al grupo:
Añadimos permisos:
Cargamos el grupo:
Si las dos líneas anteriores fallan, entonces debemos hacer:
Ahora pasamos a la configuración.
Nos creamos la configuración inicial:
Establecemos nuestro nick de Hamachi
Nos loguearnos en Hamachi:
Para unirnos a una red ya existente:
O para crear una red nueva:
Y para estar online en la red a la que nos unimos:
Y si quisieramos desconectarnos de Hamachi:
Llegado a este punto ya estamos conectados a Hamachi, logueados y unidos online a una red.
Ahora vamos a ver como crear un script para iniciar, reiniciar y parar Hamachi:
Abrimos un editor de texto de esta forma (para Ubuntu):
o de esta para Kubuntu:
y pegamos este código:
Guardamos el archivo y cerramos el editor.
Con esto ya podremos iniciar, reiniciar o parar el servicio Hamachi con estos comandos:
Ahora haremos el script que sea ejecutable:
Finalmente añadimos el script al lanzador para que se ejecute automáticamente siempre que encendamos el PC aunque no hagamos sesión:
Si algún día queremos que nuestro servicio Hamachi no inicie automáticamente simplemente tendremos que eliminar el permiso de ejecución del script:
Y si queremos cambiar nuestro nick o red a la que nos conectamos, con Hamachi activo ejecutamos las órdenes descritas con anterioridad para tal fin.
Ahora voy a poner como mejorar el servicio.
Algunas veces, cuando tenemos Ubuntu conectado a una red a través de Hamachi, podemos observar desde otros PCs conectados a Hamachi como aparece una admiración amarilla intermitente en la ventana de Hamachi (en el programa Hamachi de Windows), esto se soluciona de la siguiente manera:
o si estamos en Kubuntu:
Escribimos en el editor
salvamos y cerramos. Seguimos con estas órdenes:
Con esto se debería solucionar el problema.
Por otro lado, otra cosa que me ocurrió es que si mientras estoy conectado a una red Hamachi desde Ubuntu (o Kubuntu) pierdo la conexión a la red o Internet, Hamachi es incapaz de volverse a conectar cuando se establezca de nuevo la conexión a Internet. En Hamachi de Windows esto no ocurre, se reconecta solo. En realidad no encontré la forma de solucionar esto, por lo que animo si alguien sabe como solucionarlo que lo deje escrito en un comentario. Lo que a mí se me ocurrió es cada X tiempo reiniciar el servicio hamachi, así si se ha caído se volverá a conectar. Lo bueno es que como el reinicio es muy rápido (menos de dos segundos) aunque estemos usando la red Hamachi en el momento del reinicio automático no pasa nada, sigue funcionando normalmente.
Para programar automáticamente el reinicio cada hora debemos hacer:
o en caso de Kubuntu:
y añadimos al final del fichero que se abre:
Así conseguimos que se reinicie automáticamente cada hora.
Finalmente dejo escrito como solucionar un error que parece que pasa en Ubuntu 9.10: En el momento de ejecutar Hamachi, sale un mensaje de error que dice "Terminado (killed)". Para solucionar esto hay que ejecutar:
En caso que desde otros clientes veáis en vuestro programa Hamachi que el servidor Ubuntu se desconecta, os dejo aquí un enlace en el que proponen una solución (yo no lo he probado).
Con esto termino la mini guía. Si tenéis alguna aportación de como configurar más o automatizar mejor Hamachi en Ubuntu, por favor dejad comentarios.
En esta mini guía o mini manual voy a describir los pasos que yo he seguido para instalar Hamachi en mi Kubuntu 11.10 (y también en un Ubuntu Server 11.10) como servicio que arranca automáticamente antes de iniciar sesión, y en caso de caída de la red y/o Internet se reconecte solo.
Para instalar Hamachi en Ubuntu primero hay que asegurarse que tenemos instalado el soporte de IP Tunnelling en el kernel, normalmente siempre está instalado, sino lo está no podremos continuar.
Si al ejecutar
sudo modprobe tun
no sale nada, significa que sí lo tenemos instalado.
Ahora tenemos que comprobar que está creada la carpeta de tunnelling en /dev con el comando:
ls /dev/net/tun
Si sale un mensaje que dice que no existe el fichero o directorio, hay que crearla así:
sudo mkdir /dev/net
sudo mknod /dev/net/tun c 10 200
Para x86_64 bits será necesario instalar:
$ sudo apt-get -y install build-essential ia32-libs upx-ucl
Para x86_32 bits:
$ sudo apt-get -y install build-essential upx-ucl
Ahora pasamos a instalar Hamachi:
Descargamos la última versión de http://files.hamachi.cc/linux/. Cuando escribí el post la última versión era http://files.hamachi.cc/linux/hamachi-0.9.9.9-20-lnx.tar.gz.
Nos vamos al directorio donde lo hemos descargado, extraemos el contenido del fichero, y nos vamos a dicha carpeta extraída:
tar -zxvf hamachi-0.9.9.9-20-lnx.tar.gz
cd hamachi-0.9.9.9-20-lnx/
E instalamos Hamachi:
sudo make install
sudo tuncfg
Nota: En caso que alguna de las dos líneas anteriores fallen al ejecutarse (por ejemplo en Ubuntu Server ocurre) debemos hacer:
sudo apt-get install make
sudo apt-get install binutils
Con esto ya lo tenemos instalado, ahora tenemos que configurar los permisos de usuarios.
Nos creamos un usuario para Hamachi que podamos iniciarlo solo como miembros del grupo hamachi.
Creamos el grupo hamachi:
sudo groupadd hamachi
Añadimos nuestro usuario al grupo hamachi (sustituye usuario por el nombre de tu usuario en Ubuntu):
sudo gpasswd -a usuario hamachi
Añadimos el usuario root al grupo:
sudo gpasswd -a root hamachi
Añadimos permisos:
sudo chmod 760 /var/run/tuncfg.sock
Cargamos el grupo:
sudo chgrp hamachi /var/run/tuncfg.sock
Si las dos líneas anteriores fallan, entonces debemos hacer:
touch /var/run/tuncfg.sock
Ahora pasamos a la configuración.
Nos creamos la configuración inicial:
sudo hamachi-init -c /etc/hamachi
Ahora ejecutamos hamachi:
sudo hamachi -c /etc/hamachi start
Establecemos nuestro nick de Hamachi
sudo hamachi -c /etc/hamachi set-nick NickDeHamachi
Nos loguearnos en Hamachi:
sudo hamachi -c /etc/hamachi login
Para unirnos a una red ya existente:
sudo hamachi -c /etc/hamachi join RedParaUnirnos ContraseñaDeLaRed
O para crear una red nueva:
sudo hamachi -c /etc/hamachi create RedParaCrear ContraseñaDeLaRed
Y para estar online en la red a la que nos unimos:
sudo hamachi -c /etc/hamachi go-online RedEnLaQueNosHemosUnido
Y si quisieramos desconectarnos de Hamachi:
sudo hamachi -c /etc/hamachi logout
Llegado a este punto ya estamos conectados a Hamachi, logueados y unidos online a una red.
Ahora vamos a ver como crear un script para iniciar, reiniciar y parar Hamachi:
Abrimos un editor de texto de esta forma (para Ubuntu):
sudo gedit /etc/init.d/hamachi
o de esta para Kubuntu:
sudo kate /etc/init.d/hamachi
y pegamos este código:
#!/bin/sh
### BEGIN INIT INFO
# Provides: hamachi
# Required-Start: $remote_fs $syslog $network
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start hamachi at boot time
# Description: Starts up hamachi daemon. Networking is required.
### END INIT INFO
hamachi_start() {
echo "Starting hamachi..."
/sbin/tuncfg
/usr/bin/hamachi -c /etc/hamachi start
/bin/chmod 760 /var/run/tuncfg.sock
/bin/chgrp hamachi /var/run/tuncfg.sock
}
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
Guardamos el archivo y cerramos el editor.
Con esto ya podremos iniciar, reiniciar o parar el servicio Hamachi con estos comandos:
sudo service hamachi start
sudo service hamachi restart
sudo service hamachi stop
Ahora haremos el script que sea ejecutable:
sudo chmod +x /etc/init.d/hamachi
Finalmente añadimos el script al lanzador para que se ejecute automáticamente siempre que encendamos el PC aunque no hagamos sesión:
sudo update-rc.d hamachi defaults
Si algún día queremos que nuestro servicio Hamachi no inicie automáticamente simplemente tendremos que eliminar el permiso de ejecución del script:
sudo chmod -x /etc/init.d/hamachi
Y si queremos cambiar nuestro nick o red a la que nos conectamos, con Hamachi activo ejecutamos las órdenes descritas con anterioridad para tal fin.
Ahora voy a poner como mejorar el servicio.
Algunas veces, cuando tenemos Ubuntu conectado a una red a través de Hamachi, podemos observar desde otros PCs conectados a Hamachi como aparece una admiración amarilla intermitente en la ventana de Hamachi (en el programa Hamachi de Windows), esto se soluciona de la siguiente manera:
sudo gedit /etc/hamachi/config
o si estamos en Kubuntu:
sudo kate /etc/hamachi/config
Escribimos en el editor
KeepAlive 30
salvamos y cerramos. Seguimos con estas órdenes:
su
(escribimos contraseña del usuario root)
cd
mkdir .hamachi
cp /etc/hamachi/config .hamachi/config
exit
sudo service hamachi restart
Con esto se debería solucionar el problema.
Por otro lado, otra cosa que me ocurrió es que si mientras estoy conectado a una red Hamachi desde Ubuntu (o Kubuntu) pierdo la conexión a la red o Internet, Hamachi es incapaz de volverse a conectar cuando se establezca de nuevo la conexión a Internet. En Hamachi de Windows esto no ocurre, se reconecta solo. En realidad no encontré la forma de solucionar esto, por lo que animo si alguien sabe como solucionarlo que lo deje escrito en un comentario. Lo que a mí se me ocurrió es cada X tiempo reiniciar el servicio hamachi, así si se ha caído se volverá a conectar. Lo bueno es que como el reinicio es muy rápido (menos de dos segundos) aunque estemos usando la red Hamachi en el momento del reinicio automático no pasa nada, sigue funcionando normalmente.
Para programar automáticamente el reinicio cada hora debemos hacer:
sudo gedit /etc/crontab
o en caso de Kubuntu:
sudo kate /etc/crontab
y añadimos al final del fichero que se abre:
* */1 * * * root service hamachi restart
Así conseguimos que se reinicie automáticamente cada hora.
Finalmente dejo escrito como solucionar un error que parece que pasa en Ubuntu 9.10: En el momento de ejecutar Hamachi, sale un mensaje de error que dice "Terminado (killed)". Para solucionar esto hay que ejecutar:
sudo apt-get install upx-ucl
cd /usr/bin
sudo upx -d hamachi
En caso que desde otros clientes veáis en vuestro programa Hamachi que el servidor Ubuntu se desconecta, os dejo aquí un enlace en el que proponen una solución (yo no lo he probado).
http://community.logmein.com/t5/Hamachi/hamachi-0-9-9-9-20-linux-client-to-hamachi-2-issues/td-p/30817/page/4
Con esto termino la mini guía. Si tenéis alguna aportación de como configurar más o automatizar mejor Hamachi en Ubuntu, por favor dejad comentarios.
Comentarios
Publicar un comentario