Existen muchas herramientas que permiten usar VPN las cuales permiten crear, literalmente, una “red” completamente independiente de las configuraciones de Firewall, IDS y otros elementos restrictivos en un determinado entorno (como por ejemplo, una organización, una universidad, etc).
Los conceptos de lo que es una VPN, se pueden ver con un mayor nivel de detalle aquí: http://en.wikipedia.org/wiki/Virtual_private_network
la intención de esta entrada es simplemente indicar como se puede utilizar este mecanismo para realizar un “bypass” de las restricciones a las que habitualmente nos encontramos expuestos en determinados sitios, a continuación se indicará el uso de Hamachi para lograr este cometido
HAMACHI
Se trata de una herramienta sencilla y muy robusta para crear interfaces de red con acceso a Internet de modo completamente independiente a la red local en la cual se encuentra conectada una máquina determinada, se encuentra soportada por Windows, Mac y Linux. La versión de hamachi para este ultimo sistema operativo es Beta, sin embargo, de momento no he encontrado ningún inconveniente en su uso, este ultimo sistema operativo ha sido el utilizado para realizar todas las pruebas correspondientes a instalación y uso.
Instalación
En esta ruta: http://help.logmein.com/SelfServiceDownloads se encuentra el software disponible para descargar, existen 3 distribuciones del software, paquete RPM, paquete DEB y paquete TAR, en este caso se utiliza el paquete TAR, su instalación es realmente fácil, solamente basta con descomprimir el contenido del fichero en cualquier localización y ejecutar el comando ./install.sh con esto se instalará Hamachi como un servicio, es decir se ubicará un script de ejecución en /etc/init.d/ el software queda ubicado en el directorio /opt/logmein-hamachi una vez se instala, automáticamente se inicia el servicio (demonio) en la máquina, de hecho, se habilita una interfaz de red nueva y preparada para ser utilizada, ejecutando el comando ifconfig puede apreciarse dicha interfaz:
>ifconfig
ham0 Link encap:Ethernet HWaddr 2e:4b:d6:8e:af:91 inet addr:5.120.212.178 Bcast:5.255.255.255 Mask:255.0.0.0 inet6 addr: fe80::2c4b:d6ff:fe8e:af91/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1404 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:27 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:500 RX bytes:0 (0.0 B) TX bytes:6229 (6.2 KB) |
Muy sencillo, por otro lado este demonio puede ser iniciado y detenido como cualquier otro solamente ejecutando
/etc/init.d/logmein-hamachi start
/etc/init.d/logmein-hamachi stop
NOTA: Para que el proceso de instalación funcione correctamente es necesario tener instalada la librería lbs la cual se puede encontrar sin dificultades en sistemas Ubuntu/Debian.
Comandos Basicos Hamachi
Ahora que Hamachi se encuentra instalado, lo primero es “loguearse”
>hamachi
version : 2.0.1.15 pid : 6027 status : offline client id : 091-804-850 address : 5.120.212.178 nickname : adastra-VPCEB3C5E lmi account: >hamachi login Logging in ………. ok >hamachi version : 2.0.1.15 pid : 6027 status : logged in client id : 091-804-850 address : 5.120.212.178 nickname : adastra-VPCEB3C5E lmi account: – |
Ahora el estado de la máquina es “logged in” lo que indica que es posible comenzar a utilizar Hamachi, para este fin se pueden establecer algunas características como por ejemplo el “nickname” y una cuenta de “LogMe In” (si no se dispone de una, no importa, se trata solamente de algo opcional)
Si ha terminado la interacción con Hamachi, para desconectarse:
>hamachi logout
Logging out .. ok |
Ahora bien, para que todo esto tenga un sentido es necesario “unirse” a una red Hamachi y/o crear una, en Internet existen una gran cantidad de redes Hamachi creadas por probablemente millones de usuarios alrededor del mundo, por esta razón, es posible que cuando se intente crear una red, esta no sea posible ser creada porque el nombre ya ha sido tomado por alguien, en cualquier caso, para crear una red Hamachi se utiliza la opción “create” con el nombre de la red a crear, posteriormente se debe crear una contraseña para esta red, de esta forma si un miembro quiere unirse, debe conocer esta clave, que como propietarios de la red recien creada, podemos distribuirla a aquellos miembros que pueden unirse.
>hamachi create adastra
Password: Creating adastra .. failed, network name is already taken >hamachi create jdaanial-adastra Password: Creating jdaanial-adastra .. ok |
Por otro lado, el propietario de una red hamachi puede borrar también dicha red con la opción “delete” solamente el propietario puede hacer esto. Tambien es posible listar las redes con el comando “list”
>hamachi list
* [jdaanial-adastra] |
Un miembro puede loguearse con la opción join
>hamachi join jdaanial-adastra
Password: Joining jdaanial-adastra .. ok |
Posteriormente, se pueden ver los miembros que se encuentran conectados a la VPN con la opción list
>hamachi list
* [jdaanial-adastra] * 093-940-821 debian 5.153.108.85 direct UDP 192.168.1.34:41382 |
De esta forma aparecerán los miembros conectados a la red, (exceptuando el miembro que ha ejecutado el comando) en este caso, se puede ver el tipo de conexión, la dirección IP externa, es decir, con la que se puede realizar la conexión y la dirección interna de la red en la que se encuentra conectado.
Para ver los detalles de uno de los miembros
>hamachi peer 093-940-821
client id : 093-940-821 nickname : debian connection : direct authentication : completed encryption : enabled compression : disabled VPN status : ok VIP address : 5.153.108.85 via server ok TCP n/a * direct ok UDP 192.168.1.34:41382 |
Para ver los detalles generales de la red
>hamachi network jdaanial-adastra
id : jdaanial-adastra name : jdaanial-adastra type : Mesh owner : This computer status : unlocked approve : auto |
Para cambiar los detalles de miembro, o cambiar la contraseña de la red
>hamachi set-nick jdaanial
Setting nickname .. ok >hamachi set-pass jdaanial-adastra newpass Setting password for jdaanial-adastra .. ok |
Para administrar el acceso a la red Permitir/Denegar el acceso a usuarios remotos
>hamachi set-access jdaanial-adastra lock
Setting access for jdaanial-adastra .. ok >hamachi set-access jdaanial-adastra unlock Setting access for jdaanial-adastra .. ok |
Posteriormente, es posible establecer el nivel de aceptación de nuevas conexiones, por defecto es automática, es decir, no se solicita confirmación por parte del propietario de la red, por otra parte si se establece manual, el propietario de la red debe confirmar la conexión, esto aunque las credenciales ingresadas por el cliente sean correctas.
>hamachi set-access jdaanial-adastra manual
Setting access for jdaanial-adastra .. ok |
Posteriormente, para que un cliente pueda conectarse, debe utilizar la opción “do-join” dado que la opción “join” por si sola fallará, de esta forma se enviará la petición para que el propietario de red la acepte (si quiere)
>hamachi do-join jdaanial-adastra
Password: Joining jdaanial-adastra .. ok, request sent, waiting for approval |
Desde la perspectiva del propietario de la red, puede optar por rechazar la petición o aceptarla
>hamachi list
* [jdaanial-adastra] ? 093-940-821 |
La marca “?” indica que el cliente esta esperando por una respuesta por parte del propietario de la red, para rechazar dicha conexión, utilizar la opción “reject” para aceptarla “approve”
>hamachi reject jdaanial-adastra 093-940-821
>hamachi list * [jdaanial-adastra] Reject jdaanial-adastra in 093-940-821 .. ok —————Aquí vuelve nuevamente la petición, esta vez se acepta. >hamachi list * [jdaanial-adastra] ? 093-940-821 >hamachi approve jdaanial-adastra 093-940-821 Approve jdaanial-adastra in 093-940-821 .. ok hamachi list * [jdaanial-adastra] * 093-940-821 debian 5.153.108.85 direct UDP 192.168.1.34:39151 |
También es posible eliminar determinados miembros de la red con la opción evict
>hamachi evict jdaanial-adastra 093-940-821
Evicting 093-940-821 from jdaanial-adastra .. ok |
Ahora, es posible acceder a dicha máquina de forma remota, desde cualquier lugar, como si se tratase de una máquina mas en la red local, lo que desde luego es sumamente interesante.
Finalmente, sobre esta herramienta existen algunas “ventajas” y otras “desventajas” que a continuación se listarán:
Ventajas | Desventajas |
Facilidad de Instalación, Configuración, Uso | Se encuentra en estado Beta para GNU/Linux |
Opciones por linea de comandos robustas | La aplicación GUI para Hamachi solamente se encuentra disponible para Windows y Mac, no para GNU/Linux |
Privacidad y seguridad en la información compartida en las redes creadas en Hamachi | No es Software Libre, se trata de Freeware, sin embargo no tiene ningún tipo de restricción para uso personal y educativo |
Interesante entrada !!!!! gracias.
realmente tenia en la lista de pendientes probar Hamachi….ya no lo esta.
Aunque tratándose de una aplicación de código cerrado deberíamos siempre poner en consideración la «mediación de un servidor» (en este caso), el cual es operado por el vendedor., algo no menor si de datos sensibles se trata.
saludos.
Me gustaMe gusta
Efectivamente gaucho, se trata de una aplicación de código cerrado y la información viaja por los servidores de LogME-In, así que es una «pega» importante a tener en cuenta… pero bueno, es un software interesante que merecia la pena la entrada. De todos modos, en las proximas se hablará sobre otras VPN libres como OpenVPN y Adito.
Me gustaMe gusta
La verdad que muy buena info, es genial!
Me gustaMe gusta