Ruta por puerto en configuración multi-isp

Ruta por puerto en configuración multi-isp

Estoy usando un firewall de Shorewall y configuré con éxito varias fuentes de ISP.

Actualmente equilibra todo el tráfico hacia ambos ISP. Lo que quiero lograr es enrutar el tráfico ssh al ISP1 y enrutar el tráfico www al ISP2. ¿Cómo puedo hacer esto?

Respuesta1

Creo que necesitarás crear varias tablas de rutas. Uno es el predeterminado para el tráfico normal, el siguiente es la tabla SSH especial que contiene entradas de ruta solo para la conexión ISP que desea utilizar.

A continuación, configure iptables para marcar los paquetes que provienen de su IP y del puerto SSH de escucha.

Finalmente, puede configurar entradas de reglas de IP para enrutar según la marca del firewall.

Hay mucha información (pero es posible que ya la hayas visto hasta ahora) en la documentación de LARTC:http://lartc.org/howto/lartc.rpdb.html

Entonces, como ejemplo:

  1. Agregue una nueva tabla de enrutamiento con un nombre.

    echo SSH 500 >>/etc/iproute2/rt_tables
    
  2. Agregue una ruta predeterminada a otra tabla de enrutamiento que logre lo correcto.

    ip route add default via $ISP2_GW table SSH 
    
  3. Configure una regla para que fwmark utilice esta nueva tabla.

    ip rule add fwmark 0x0001 table SSH
    
  4. Finalmente configure una regla de iptables para marcar sus paquetes.

    iptables -I PREROUTING -t mangle -p tcp --sport 22 -j MARK --set-mark 0x0001
    iptables -I OUTPUT     -t mangle -p tcp --sport 22 -j MARK --set-mark 0x0001
    

Con suerte, eso debería configurar lo que desea correctamente. ¡También deberás asegurarte de que esta configuración sobreviva a los reinicios! Pero eso te lo dejo como ejercicio.

información relacionada