Inicio » Linux » Desactivar la opción Default Gateway en un servidor OpenVPN

Desactivar la opción Default Gateway en un servidor OpenVPN

Loading

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

  1. 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.
  2. 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 contiene push "redirect-gateway def1". Esto se hace agregando un # al inicio de la línea, de la siguiente manera:

    #push "redirect-gateway def1"
  3. 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

  1. 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.
  2. 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
  3. 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 contengan redirect-gateway en el archivo de configuración del cliente.
  4. 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

  1. 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.
  2. 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"
  3. 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 contengan redirect-gateway en el archivo de configuración del servidor.
  4. 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

  1. 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
  2. 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.