Cómo enrutar todo el tráfico (incluso al propio servidor openvpn) a través de la propia VPN

Cómo enrutar todo el tráfico (incluso al propio servidor openvpn) a través de la propia VPN

Entonces tengo un servidor con la dirección IP pública 101.102.103.104 (por ejemplo). Este servidor ejecuta un servidor OpenVPN, además de muchas otras cosas que escuchan en los puertos del dispositivo de la red IP pública.

Lo que quiero hacer es, una vez que me conecte a 101.102.103.104, enrutar todo el tráfico futuro a esta IP a través de la VPN.

Entonces, por ejemplo, si hago curl101.102.103.104:8080, se realiza a través de la conexión VPN.

Intenté agregar un push routea mi server.conf así:

push "route 101.102.103.104 255.255.255.255"

e incluso intenté agregar una ruta de exclusión:

push "route 101.102.103.104 255.255.255.255 net_gateway"

pero no pareció funcionar. En ejecución sudo route -ntodavía se muestra la ruta que pasa por el enrutador de mi casa:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.1.1     0.0.0.0         UG    0      0        0 wlan0
10.8.0.1        10.8.0.5        255.255.255.255 UGH   0      0        0 tun0
10.8.0.5        0.0.0.0         255.255.255.255 UH    0      0        0 tun0
101.102.103.104  192.168.1.1     255.255.255.255 UGH   0      0        0 wlan0
192.168.1.0     0.0.0.0         255.255.255.0   U     9      0        0 wlan0

¿Alguna idea sobre cómo puedo lograr esto? Pensé que el problema probablemente era el hecho de que estaba intentando enrutar el tráfico al servidor VPN, a través del servidor VPN, y así formar una especie de bucle infinito, pero eso es sólo una suposición.

Respuesta1

La tabla de enrutamiento que mostró claramente no enruta todo el tráfico a través de la VPN, como se muestra en la primera línea. En su configuración actual, todo lo que hace es permitir que el cliente tenga acceso a la LAN.

El comando para enrutar todo el tráfico del cliente a través de OpenVPN, incluido todo el tráfico a terceros (es decir, no la LAN del servidor VPN) es

  push "redirect-gateway def1"

que se agregará al archivo de configuración del servidor (deberá reiniciar el programa OpenVPN para que el cambio surta efecto).

Además, dado que ha configurado un OpenVPN enrutado, no un puente, necesitará activar NATting en el servidor:

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

Esto supone que la interfaz del servidor OpenVPN en Internet (es decirel que tiene dirección IP 101.102.103.104) se llamaeth0. Por favor ajuste en consecuencia.

Para verificar su configuración, una vez que se haya establecido una conexión con el servidor OpenVPN, emita el siguiente comando:

 wget 216.146.39.70:80 -O - -o /dev/null

Esto generará su dirección IP aparente. Si el resultado contiene 101.102.103.104, ya está.

información relacionada