La configuración de OpenVPN frecuentemente se utiliza para enrutar todo el tráfico de internet a través del túnel VPN. Sin embargo, en algunos escenarios, puede ser necesario que solo se enrute cierto tráfico específico a través del túnel VPN, mientras que el tráfico general de internet sigue utilizando la conexión principal del usuario. Esto se logra desactivando la opción de default gateway en OpenVPN.
A continuación, se presenta una guía paso a paso para desactivar la opción de default gateway en un servidor OpenVPN y configurar el enrutamiento adecuado en el cliente.
Paso 1: Configuración del Servidor OpenVPN
- Acceder al Archivo de Configuración del Servidor:
El archivo de configuración del servidor OpenVPN generalmente se encuentra en/etc/openvpn/
y tiene una extensión.conf
. - Modificar la Configuración:
Para evitar que el servidor OpenVPN envíe la ruta de default gateway a los clientes, comente o elimine la línea que contienepush "redirect-gateway def1"
. Esto se hace agregando un#
al inicio de la línea, de la siguiente manera:#push "redirect-gateway def1"
- Guardar y Reiniciar el Servidor:
Después de realizar los cambios, guarde el archivo y reinicie el servicio de OpenVPN para aplicar las modificaciones:sudo systemctl restart openvpn@server
El siguiente paso lo podemos realizar en dos sitios a elegir, en el servidor o en el cliente, lo explicamos en los dos sitios, pero solo hay que hacerlo en uno de los dos, el que nos convenga más.
Paso 2.1: Configuración del Cliente OpenVPN
- Acceder al Archivo de Configuración del Cliente:
El archivo de configuración del cliente OpenVPN también tiene una extensión.conf
o.ovpn
y puede estar ubicado en diferentes directorios dependiendo del sistema operativo del cliente. - Especificar las Rutas Deseadas:
En el archivo de configuración del cliente, agregue líneas que especifiquen las rutas que deben ir a través del túnel VPN. Por ejemplo, para enrutar solo una subred específica a través del VPN, y se pueden establecer tantas rutas como queramos agregandolas una debajo de la otra:route 192.168.1.0 255.255.255.0
- Evitar el Enrutamiento de Todo el Tráfico:
Asegúrese de que no haya una directiva que obligue a enrutar todo el tráfico a través del túnel VPN. No debe haber líneas que contenganredirect-gateway
en el archivo de configuración del cliente. - Aplicar los Cambios:
Guarde el archivo y reinicie el cliente OpenVPN para que los cambios surtan efecto.
Paso 2.2: Configuración del Servidor OpenVPN
- Acceder al Archivo de Configuración del Servidor:
El archivo de configuración del servidor OpenVPN generalmente se encuentra en/etc/openvpn/
y tiene una extensión.conf
. - Especificar las Rutas Deseadas:
En el archivo de configuración del cliente, agregue líneas que especifiquen las rutas que deben ir a través del túnel VPN. Por ejemplo, para enrutar solo una subred específica a través del VPN, y se pueden establecer tantas rutas como queramos agregandolas una debajo de la otra:push "route 192.168.1.0 255.255.255.0"
- Evitar el Enrutamiento de Todo el Tráfico:
Asegúrese de que no haya una directiva que obligue a enrutar todo el tráfico a través del túnel VPN. No debe haber líneas que contenganredirect-gateway
en el archivo de configuración del servidor. - Aplicar los Cambios:
Después de realizar los cambios, guarde el archivo y reinicie el servicio de OpenVPN para aplicar las modificaciones:sudo systemctl restart openvpn@server
Para nuestro criterio es mejor gobernar las rutas desde el servidor cuando se manejan gran cantidad de conexiones de clientes y setearlas nosotros desde el servidor. ( Hay que escoger entre el paso 2.1 o 2.2 no hacer los dos.)
Paso 3: Verificación del Enrutamiento
- Verificar la Tabla de Rutas en el Cliente:
Después de conectar el cliente OpenVPN, verifique la tabla de rutas para asegurar que solo el tráfico específico esté siendo enrutado a través del túnel VPN. En sistemas Linux, esto se puede hacer con el comando:ip route
En Windows, use el comando:route print
- Pruebas de Conectividad:
Realice pruebas de conectividad para asegurarse de que el tráfico general de internet usa la conexión principal, mientras que el tráfico específico (por ejemplo, hacia la subred 192.168.1.0/24) utiliza el túnel VPN.
Conclusión
Desactivar la opción de default gateway en un servidor OpenVPN y configurar adecuadamente las rutas en el cliente es un proceso sencillo que permite mantener el enrutamiento de internet a través de la conexión principal del usuario, mientras que el tráfico específico puede ser dirigido a través del túnel VPN. Esto puede ser particularmente útil en escenarios donde se necesita acceso a recursos específicos en la red VPN sin comprometer el rendimiento general de la conexión a internet del cliente.