Hoy les traigo una solucion para armar VPNs de forma muy simple, claro aclaro, NO ES SOFTWARE LIBRE, pero al menos es gratis.
¿Por que escribo sobre Hamachi habiendo tantas soluciones libres? Por simplicidad … como veremos en este post, podemos contar con una VPN en pocos minutos y con un esfuerzo minimo.
La realidad es que tanto soluciones como OpenVPN o TincVPN son un poco complicadas de configurar para una persona que no la tiene muy clara con el asunto, y muchas veces es necesario tener la facilidad de conectarnos a computadoras remotas de forma sencilla, por ejemplo si damos soporte a la familia y amigos.
Instalar Hamachi en plataformas como Windows y MacOS X es bastante trivial, entramos en la pagina de Logmein, descargamos el instalador de Hamachi VPN e instalamos, pero en Linux la cosa cambia un poco, ya que el paquete de binarios para Linux se encuentra en la zona de labs de Logmein y hay que tocar un par de archivos para configurarlo, pero a no asustarse, como veremos a continuación es realmente simple hacerlo.
Lo primero que debemos hacer es, como siempre verificar que nuestro sistema corra en 32bits o 64bits (o ARM en caso que aplique), esto lo hacemos con el siguiente comando:
$ uname -r
2.6.32-5-amd64
o
$ cat /proc/version
Linux version 2.6.32-5-amd64 (Debian 2.6.32-39) (dannf@debian.org) (gcc version 4.3.5 (Debian 4.3.5-4) ) #1 SMP Thu Nov 3 03:41:26 UTC 2011
o
$ file /sbin/init
/sbin/init: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, stripped
Como podemos ver mi sistema es 64bits (amd64), pero esto depende de la arquitectura de nuestra maquina y de que version del sistema hallamos instalado.
Sabiendo esto lo proximo es bajar el paquete correspondiente a nuestra arquitectura desde los laboratorios de logmein, especificamente vamos a bajar para 64bits el paquete logmein-hamachi_2.1.0.17-1_amd64.deb
Antes de instalar debemos instalar el paquete “lsb-core” para que no nos tire error en la instalacion, es una dependencia que debemos cumplir, para hacer esto simplemente corremos como root o con sudo el siguiente comando:
$ apt-get install lsb-core
Una ves que tenemos el archivo en nuestra maquina ejecutamos el siguiente comando posicionados en el directorio donde hemos descargado el paquete:
dpkg -i logmein-hamachi_2.1.0.17-1_amd64.deb
De esta forma instalamos el paquete, y el proximo paso es configurar el Hamachi para que se conecte con un usuario en particular, para esto debemos crear el archivo h2-engine-override.cfg dentro del directorio /var/lib/logmein-hamachi con el siguente contenido
Ipc.User username
donde username es el nombre de usuario que uds. elijan. Reiniciamos el servicio corriendo como root o con privilegios suficientes la siguiente sentencia:
$ /etc/init.d/logmein-hamachi restart
Si todo esta bien, ya deberiamos tener el servicio levantado correctamente, y tirando un ifconfig -a deberiamos ver una nueva interface de red creada, la interface ham0. Lo próximo que nos queda por hacer es configurar el Hamachi para que se conecte a alguna red existente o creamos una red nueva, pero previamente debemos conectarnos para poder hacerlo, entonces corremos los siguientes comandos, como root o con privilegios escalados con sudo:
$ sudo hamachi
version : 2.1.0.17
pid : 4731
status : offline
client id :
address :
nickname :
lmi account:
$ sudo hamachi login
Logging in .......... ok
Volvemos a correr hamachi a secas para ver el estado
$ sudo hamachi
version : 2.1.0.17
pid : 4731
status : logged in
client id : XXX-XXX-XXX
address : X.XX.XX.XXX xxxx:xx::xxx:xxxx
nickname : username
lmi account: -
Por razones de seguridad cambie el id de cliente, y la ip y mac que se muestran en address.
Bien, ya estamos conectados, pero si tiramos el comando hamachi con el parametro list para que nos muestra las redes a las que estamos conectados y las maquinas registradas no vamos a ver nada por que todavia no lo hemos especificado
$ sudo hamachi list
You have no networks.
Antes de seguir veamos que parametros acepta el comando.
$ hamachi help
LogMeIn Hamachi, a zero-config virtual private networking utility, ver 2.1.0.17
usage: hamachi [command]
command specifies an action. Can be one of the following -
# set-nick <nickname>
login
logon
logout
logoff
# list
peer <client id>
network <network id>
# create <network id> [<password>]
set-pass <network id> [<password>]
set-access <network id> [lock|unlock] [manual|auto]
delete <network id>
evict <network id> <client id>
# approve <network id> <client id>
reject <network id> <client id>
# join <network id> [<password>]
do-join <network id> [<password>]
leave <network id>
# go-online <network id>
go-offline <network id>
# attach <LogMeIn account>
attach-net <LogMeIn account>
cancel
# gw-config <network id>
[dhcp|static [net <start ip> <end ip> <netmask> <default gateway>]
[domain <dns domain>]
[dns <dns ip 1> [<dns ip 2>]]]
[del <remote subnet CIDR> ...]
[add <remote subnet CIDR> ...]
# set-ip-mode ipv4 | ipv6 | both
# check-update
If no command is specified, hamachi displays its status including version,
pid, client id, online status, nickname and the LogMeIn account
Como podemos ver, para crear una red debemos ejecutar el comando con los siguientes parametros:
$ sudo hamachi create miVPN un4P4ssW0rd
o si queremos entrar en una red existente
$ sudo hamachi join unaVPN un4P4ssW0rd
Si ejecutamos nuevamente hamachi con el parametro list deberiamos ver a la nueva VPN y las maquinas que estan registradas en esta.
Pero aca no termina la cosa
… Hamachi para Linux es puramente por consola, no tenemos nada que venga de “fabrica” con GUI, pero como siempre alguien ha contribuido con su tiempo y esfuerzo y ha hecho una pequeña herramienta que nos soluciona la vida
… para Linux entonces tenemos una gui para hamachi que se llama Haguichi.
Particularmente haguichi anda muy bien con Ubuntu, pero como sabemos Ubuntu no es compatible con Debian y por lo tanto muchas veces los paquetes tienen dependencias que en Debian no pueden ser cumplidas, PERO A NO DESESPERAR!!! … podemos usar una version anterior de Haguichi
No voy a explicar como instalar el haguichi por que es bastante trivial, pero sepan que la version mas nueva que anda bien en Debian es la 1.0.11.
Saludos!



#1 by Emiliano on 23/12/2011 - 13:05
Muy bueno el Post!
ya lo tengo corriendo en mi Debian y anda muy bien!!!!
consulta:
Si quiero compartir una carpeta en la VPN…lo tendria que estar haciendo por consola? o el Haguichi me da la posibilidad de hacerlo de manera grafica? como podria compartir para que las otras personas puedan acceder a los directorios?
#2 by TheCoffeMaker on 23/12/2011 - 13:13
El Hamachi no te va a servir para hacer lo que queres hacer, el tema es el siguiente, podes hacerlo con Samba, si queres compartir directorios como recursos de red de Windows, esto te sirve para compartir de esta forma con clientes de M$, o tambien podes configurar un SFTP o FTP, aunque tenes mil formas de compartir datos. Pero volviendo al tema, el Hamachi solo sirve para armar una VPN … NO PARA COMPARTIR DATOS NI CONFIGURAR OTROS SERVICIOS.