Instalación de HAMACHI en Linux (Ubuntu)

12 diciembre 2011

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

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.


Forzar la comprobación de disco en Kubuntu con fsck

19 septiembre 2011

Si queremos forzar la comprobación de nuestro disco duro en el próximo arranque de Kubuntu mediante la utilidad fsck, simplemente tendremos que hacer desde consola, y como root, estos sencillos pasos:

cd /

touch /forcefsck

reboot

Listo… el sistema se reiniciará y chequeará nuestro disco.


Kubuntu 11.04 no recuerda la resolución de pantalla

16 septiembre 2011

Esto es lo que yo he hecho en mi reción instalado Kubuntu 11.04 para que al reiniciar me recuerde la configuración de pantalla y otras características:

sudo apt-add-repository ppa:kubuntu-ppa

sudo apt-get update

sudo apt-get upgrade

sudo systemsettings

Esto lo que hace es actualizar el KDE a la última versión del repositorio de Kubuntu, y luego ejecuta el administrador de configuración del sistema. Una vez abierto, volvéis a especificar vuestra configuración de pantalla, lo guardais, reiniciais y ya debería funcionar bien.

 


Violación del segmento en Kubuntu

2 febrero 2011

En una instalación nueva de Kubuntu 10.10 me estaba volviendo loco un fallo que me daba al ejecutar la aplicación Eclipse.
Resulta que hice todo lo necesario (muy poco en este caso). Simplemente instalar la JDK de JAVA 1.6, y luego bajarme el Eclipse Helios para JAVA (en la versión de 32 bits). Pues bien, al ejecutar el fichero eclipse me salía el error “Violación del segmento”.

Después de bastantes horas, instalando, desinstalando versiones de JAVA, bajando unos Eclipses otros, etc… me dio por probar otra cosa…

Yo tengo tres particiones, una para Linux (ext4) otra para Windows (ntfs), y otra de datos (ntfs). La de datos es visible desde ambos sistemas operativos. Pues bien, tengo configurado que mi Firefox grabe las descargas en la partición de datos (ntfs).

Cuando yo bajaba Eclipse lo hacía en una partición ntfs, lo descomprimía ahí mismo y no me funcionaba, me salía el error “Violación del segmento” (al ejecutarlo), lo copiaba (descomprimido) a /home/towers y el mismo fallo, probé en /var/eclipse e idem.

La solución está en no descargar desde Firefox de Kubuntu en una partición ntfs. Cuando me volví a descargar Eclipse en /home/towers/Descargas, descomprimí y ejecute eclipse… ¡eureka! Ahora sí funciona todo bien.


Instalar JAVA6 JRE en Kubuntu

1 febrero 2011

Desde una consola deberemos escribir las siguientes instrucciones para instalar JAVA 6 JRE en Kubuntu:

sudo add-apt-repository ppa:sun-java-community-team/sun-java6
sudo apt-get update
sudo apt-get install sun-java6-jdk
sudo apt-get install sun-java6-jre


Synaptic en Kubuntu 10.10

31 enero 2011

Parece ser que no se ha incluido el administrador de paquetes synaptic en Kubuntu 10.10.
Si queremos instalarlo, debermos hacer lo siguiente desde consola:

sudo apt-get install synaptic


Instalar drivers NVIDIA en Kubuntu

28 enero 2011

Desde una consola deberemos escribir las siguientes instrucciones para instalar los drivers de la tarjeta gráfica NVIDIA en nuestro Kubuntu:

sudo add-apt-repository ppa:ubuntu-x-swat/x-updates
sudo apt-get update
sudo apt-get install nvidia-current nvidia-current-modaliases nvidia-settings
sudo nvidia-xconfig

Y por último reiniciar el sistema.


Cambio de contraseña de root en Kubuntu recién instalado

27 enero 2011

Durante la instalación de Kubuntu (en este caso la versión 10.10) no pregunta en ningún momento cual será la contraseña del usuario root.

Para especificar dicha contraseña, una vez Kubuntu esté completamente instalado, haremos estos pasos:

  1. Pulsar Alt+F2 en ek escritorio KDE.
  2. Se abrirá un pequeño editor, en el que escribiremos konsole y pulsaremos INTRO.
  3. Se abre la consola, escribimos sudo passwd root
  4. Nos pregunta la contraseña de nuestro usuario (esta contraseña sí la sabemos).
  5. Nos pregunta la nueva contraseña del root (ponemos la que queramos).
  6. Nos vuelve a preguntar la nueva contraseña del root (ponemos de nuevo la misma del paso 5).

Asignar IP fija en Kubuntu

26 enero 2011

Tenemos que editar el siguiente fichero con permisos de root

/etc/network/interfaces

y debe quedar así

auto lo
iface lo inet loopback

iface eth0 inet static #le indicamos que es estática
address 192.168.1.2 #le indicamos la dirección
netmask 255.255.255.0 #le indicamos la máscara
gateway 192.168.1.1 #le indicamos la puerta de enlace (Es el router)

auto eth0

Y ahora yo recomendaría reiniciar.


Montar automáticamente los discos en Kubuntu

21 enero 2011

Cuando instalamos desde cero Kubuntu, la primera vez de cada sesión que queremos usar un dispositivo o disco nos pide confirmación y la contraseña. Si queremos que esto lo haga de manera automática, tenemos dos opciones: Por consola o de manera gráfica.

Voy a explicar la manera gráfica, que es súmamente fácil:

  1. Pulsar Alt+F2 en el escritorio KDE.
  2. Escribir (en la ventana nueva que se abre): Dispositivos extraibles y pulsar INTRO.
  3. Se abre un diálogo desde el que podemos configurar que dispositivos/discos queremos que sean montados automáticamente.

Por consola, debemos editar (siendo usuario root) el fichero /etc/fstab y añadir los dispositivos que queramos.

En el siguiente enlace explican las diferentes opciones de dicho fichero fstab.

Y aquí un par de ejemplos de líneas de dicho fichero:

/dev/sdb1 /media/win ntfs auto,rw,exec,users,dmask=000,fmask=111,nls=utf8 0 0
/dev/sdb5 /media/win2 ntfs auto,ro,exec,users,dmask=000,fmask=111,nls=utf8 0 0

Seguir

Get every new post delivered to your Inbox.