Server VPN - Parte 2

Server VPN - Parte 2

Tzinm


Una vez configurado el servidor VPN en nuestros decodificadores, podremos observar que no tenemos acceso a la red local del servidor VPN, ni tampoco tenemos acceso a internet desde la parte del cliente, únicamente tenemos conexión con el servidor VPN (con nuestro descodificador).

En esta segunda parte se pretende solucionar éste "problema". Para ello utilizaremos la herramienta "iptables" (para ampliar información seguir link), la cual deberemos instalar en nuestros descodificadores.

Todo este manual será desarrollado desde la consola, para ellos podemos utilizar la "terminal" que nos facilita OpenWebif, o herramientas del estilo "Putty" para conectarnos vía telnet a nuestro descodificador.

Comenzamos:

  • Lo primero que debemos hacer, es comprobar si tenemos instaladas las herramientas necesarias, que serán en este caso el editor "nano" y la herramienta "iptables".
opkg list-installed | egrep "(iptables|nano)"

Si ambas utilidades o una de ellas se encuentra instalada, una vez ejecutado el comando os aparecerán listadas, tal y como se puede ver en la siguiente captura.

Si alguna de las dos herramientas no las tenemos instaladas será suficiente con ejecutar cualquiera de los siguientes comandos.

En el caso de querer instalar una de ellas:

opkg update && opkg install nombre_del_paquete

En el caso de querer instalar las dos herramientas:

opkg update && opkg install iptables nano


  • El siguiente paso será editar el fichero "sysctl.conf", en el que debemos descomentar la línea "net.ipv4.ip_forward=1", es decir, debemos borrar la "#" que se encuentra al principio de la línea.

Para poder editar el fichero debemos ejecutar:

nano /etc/sysctl.conf

Una vez editado el fichero, para guardar la modificación debemos pulsar las teclas "Ctrl+O", y después "Ctrl+X" para salir del editor nano.


  • Ahora procederemos a introducir la regla de iptables. Esta regla enruta el tráfico que proviene de la red de VPN a la red local que tengamos configurada en el deco. Los paso a seguir son los siguientes:

Obtener la interfaz de red de nuestro decodificador, que probablemente sea "eth0".

ifconfig

Nos aparecerá algo como esto, la primera interfaz de red donde aparece nuestra ip local, será con la que tendremos que quedarnos, os dejo una captura de ejemplo.

La interfaz "tun0" corresponde a la interfaz virtual que genera openvpn.


A continuación debemos anotar que dirección de red que estamos utilizando para el servidor openvpn. Esto lo haremos ejecutando el comando:

grep "server 10.8" /etc/openvpn/server.conf

Nos mostrará una línea con los datos referentes al servidor VPN, únicamente nos tenemos que quedar con la dirección 10.8.x.x.

Teniendo los datos de la interfaz "eth0" y la dirección del servidor "10.8.0.0" (en ambos casos la que os corresponda), procedemos a introducir la regla de iptables. La regla será la siguiente:

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 ! -d 10.8.0.0/24 -o eth0 -j MASQUERADE

Ya tenemos prácticamente todo hecho, si hemos hecho correctamente los pasos descritos ya deberíamos poder navegar por internet y conectarnos a la red local donde se encuentra nuestro descodificador.

IMPORTANTE -- Si reiniciamos el decodificador, perderemos la configuración de iptables, por lo que es necesario hacer las reglas persistentes, os lo explico a continuación.

Ejecutamos el siguiente comando:

iptables-save > /etc/iptables_rules

Estamos guardando las reglas que hayamos introducido en el fichero "/etc/iptables_rules", que será creado automáticamente una vez ejecutado el comando (a este fichero lo podéis llamar como queráis). Podéis comprobar el fichero introduciendo el comando "cat /etc/iptables_rules"

Ya tenemos guardadas en un fichero nuestras reglas, ahora procedemos a configurar para que se inicien automáticamente. Para ello será necesario modificar el fichero "/etc/network/interfaces". Ejecutamos:

nano /etc/network/interfaces

Debemos añadir en la interfaz correspondiente (eth0 en mi caso), debajo de "gateway" la siguiente línea.

pre-up iptables-restore < /etc/iptables_rules

Guardamos la modificación y reiniciamos el deco. Si todo ha ido bien, debemos poder navegar y acceder a nuestra red local.


Parte 1 ->




Report Page