He escrito un pequeño artículo en GPL Tarragona sobre OpenVPN que es el programa que utilizo para crear redes virtuales privadas de forma segura (OpenSSL) para mi red wireless o incluso para acceder desde Internet. Muy buen programa 🙂
Artículo: OpenVPN – Solución para montar una red wireless segura
OpenVPN es un demonio utilizado para crear redes privadas virtuales (Virtual Private Network). Esto significa que es capaz de enlazar 2 nodos (e.g. nodo A conectado a una red privada y a Internet, nodo B en cualquier otra parte del mundo con conexión a internet) de forma que parezca que estan en la misma LAN (e.g. B puede conectarse con cualquier ordenador de la red de A como si realmente estuviese físicamente en dicha red). Además, esta conexión entre los 2 nodos puede ir encriptada utilizando OpenSSL, lo que se convierte en una herramienta idónea para ser utilizada en redes wireless de forma segura.
La primera ventaja de OpenVPN es que se encuentra bajo la licencia GPL, es decir, es software libre. Puede utilizar tanto TCP como UDP para comunicar los 2 nodos extremo, recomiendan el uso de UDP por cuestiones de congestión de la red. En un principio no entendía esto ya que UDP no tiene control de errores y por tanto se podrian perder paquetes, por eso me decante por utilizar TCP. Poco después me dí cuenta que mis razonamientos eran incorrectos, openvpn vendría a representar una capa inferior y las capas superiores utilizarían TCP, es decir, es posible usar openvpn con UDP ya que el control de errores se hará a un nivel superior, por ejemplo cuando conectemos a una web. Es lo mismo que la propia Internet, el medio físico no te garantiza que el paquete vaya a llegar correctamente y tienes que poner controles en capas superiores. Aquí el medio físico vendría a ser UDP.
En la misma página de OpenVPN existe un HOWTO muy completo que explica como configurarlo y ponerlo en marcha, así que no explicaré aquí nada al respecto.
Una vez tenemos montados dos nodos con OpenVPN, estos se comunicaran utilizando el puerto 5000 UDP por defecto, aunque como ya he dicho es posible cambiar a TCP. Se utilizarán certificados RSA para la autentificación (es posible utilizar un método alternativo pero menos recomendable) de forma que solo los PCs que autoricemos podrán acceder a la red virtual.
¿Como encajar todo esto en una red wireless? La encriptación WEP de las redes wireless es una medida insuficiente a la hora de intentar proteger nuestro tráfico, es posible romperlo y por tanto estamos expuestos a que cualquier persona próxima a nuestra red pueda ver nuestro tráfico (contraseñas de cuentas de correo, conversaciones de chat, contraseñas web que no usan SSL…). Por tanto hay que buscar una alternativa para protegernos y OpenVPN encaja a la perfección.
Lo tengo instalado en mi casa y por ahora funciona de maravilla, una vez en marcha tengo acceso a todos los PCs de mi red cableada y acceso completo a Internet desde mi portatil con wireless, todo de forma encriptada y solo abriendo el puerto 5000 UDP en ambos Pcs (mi portatil y el Access Point). También lo he probado utilizando Internet, es decir, estando con mi portatil en la Universidad activar la red privada virtual teniendo acceso a mi red de casa como si estubiese conectado alli mismo, me ha sorprendido gratamente porque a pesar de la conexión pobre que tengo funciona muy bien (evidentemente la velocidad decrece utilizandolo de esta forma, pero es muy usable).