
Tengo OpenVPN configurado para enrutar todo el tráfico a través de la VPN. Me pregunto si hay una manera de cambiar si todo el tráfico se enruta o solo el tráfico destinado a esa red por cliente.
Por ejemplo, si estoy en una red que no es de confianza, quiero que todo mi tráfico se enrute a través de la VPN. Sin embargo, más adelante, cuando esté en una red confiable, es posible que solo desee acceso SSH a las máquinas, pero no quiero que todo el tráfico se enrute, ya que sería innecesariamente lento.
es posible?
Respuesta1
Si el servidor le publica una ruta predeterminada, puede ignorarla, por ejemplo
route delete default tun0
y puede restaurar su ruta predeterminada previa a la conexión VPN de manera similar.
Si, por otro lado, el servidor no publica dicha ruta, puede optar por enrutar todo su tráfico a través de la VPN, aunque en este caso deberá asegurarse de que (a) el servidor VPN esté equipado para manejar esto, y sabe cómo realizar NAT/enrutar su tráfico a Internet y manejar las respuestas, y (b) asegurarse de no tener múltiples rutas predeterminadas y de que aún pueda llegar al punto final de VPN.
En resumen, asumiendo que controlas a tu cliente, controlasEntre otrossus tablas de enrutamiento, y puedes configurarlas como quieras. Enrutamientomenosal servidor de lo que podría desear es fácil; enrutamientomásde lo que podría necesitar necesita su cooperación, o al menos su capacidad; pero ambas son posibles.
Respuesta2
Basado en la idea de eliminar una ruta propuesta por @MadHatter, creé un alias que hace esencialmente esto:
sudo openvpn --config /path/to/config --route-nopull
sudo ip route add x.x.x.x/24 dev tun0
¿Dónde x.x.x.x/24
está la ruta de la red interna a la que te estás conectando a través de la VPN?
Ahora puedo usar este alias cuando quiero que solo el tráfico de la red interna sea VPN y usar la configuración sin --route-nopull
si quiero que todo el tráfico se enrute a través de la VPN.