Configuración de OpenVPN para mi nodo
Como ya había prometido, ahora que tengo mi nodo funcionando voy a ir publicando las configuraciones que me ayudaron a dejarlo pronto. En esta ocasión toca OpenVPN.
OpenVPN es una implementación abierta y libre de una Red Virtual Privada, que será la encargada de brindar la seguridad en mi red. Como ya se ha dicho en alguna oportunidad, delegar la seguridad en otras capas sería o bien perder el tiempo, o confiar en sistemas inseguros.
Así que la idea es que mis cosas privadas y personales, pasan sólo por dentro de la red VPN, en este caso 192.168.0.0/24.
Como todos mis servidores utilzan Debian GNU/Linux, instalar openvpn no es más que abrir una terminal como root y teclear:
trantor:~# apt-get install openvpn
Luego, es necesario generar los certificados y las claves, tanto para el servidor como para cada uno de los clientes. Para eso nos podemos valer de los scripts que se encuentran entre los ejemplos, en /usr/share/doc/openvpn/examples/easy-rsa/2.0/. Configuramos lo necesario en vars, y generamos primero el certificado, y luego las claves para cada uno de los servidores.
A continuación copiamos los certificados y claves a cada uno de los servidores correspondientes, teniendo cuidado de mantener la clave privada de cada servidor donde corresponde.
Finalmente copio a continuación la configuración de mi servidor, y de uno de mis clientes.
Configuración del servidor (Trantor)
#configuracion de openvpn port 1194 proto tcp dev tun #---- Seccion de llaves ----- ca keys/ca.crt cert keys/trantor.crt key keys/trantor.key dh keys/dh1024.pem #---------------------------- server 192.168.0.0 255.255.255.0 push "route 0.0.0.0 0.0.0.0 192.168.0.5" ifconfig-pool-persist ipp.txt keepalive 10 120 comp-lzo persist-key persist-tun status server-trantor-udp-1194.log verb 3
Configuración de un cliente (Kalagan)
client dev tun proto tcp # aqui especificamos que nuestro servidor sera miservidor.tld puerto 1194 remote 10.71.1.1 1194 resolv-retry infinite #esta opción sirve tanto para linux como para windows. #se debería poner la interfaces en tun/tap en dhcp para que funcione bien. ifconfig 192.168.0.2 255.255.255.0 persist-key persist-tun ca keys/ca.crt cert keys/cliente1.crt key keys/cliente1.key comp-lzo verb 3
Conclusiones y mejoras
Como verán, no es nada del otro mundo. Esta configuración, con ayuda del firewall que funciona en Trantor, permite que sólo sea posible alcanzar internet a través de la VPN.
Una posible mejora parte de la configuración de las rutas. En este caso es el servidor el que está enviando las rutas a los clientes. Esta configuración puede ser útil para instalaciones donde hay muchos clientes, todos idénticos. Para mi caso, donde cada cliente es un caso particular, esto podría cambiar a una configuración de las rutas del lado del cliente, haciendo en cada caso los malabares necesarios.
Otra mejora en el futuro, es investigar cómo hacer para conectarse a la VPN desde afuera, pero manteniendo a Trantor como gateway principal, de manera que todo el tráfico salga hcaia internet a través de la VPN.
-
Opciones
- Conectarse
Discusión