Direcione o wlan0 para o openVPN tunnel e descanse para o eth0

0

Estou com problemas para criar regras de rota / iptables para seguir a configuração:

  1. Eu tenho um servidor openVPN (tipo tun) em execução na minha máquina framboesa em casa
  2. No trabalho, eu tenho o pc da empresa (atrás do proxy) que cria um túnel usando o openVPN na minha máquina doméstica
  3. No trabalho eu tenho dongle USB Wifi (wlan0) conectado ao PC da minha empresa que deve fornecer internet usando o túnel para máquina em minha casa

Agora preciso criar regras para: 1. Todo o tráfego que vai via wlan0 para encaminhar para o túnel 2. Resto da rota de tráfego para a rede eth0 - empresa por trás da proxy

Regra de rota padrão no pc da empresa (linuxmint 15) para todo o tráfego que passa pelo eth0 - proxy:

Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default 10.131.4.1 0.0.0.0 UG 0 0 0 eth0

- > essa regra deve ficar na eth0

    
por user53280 27.11.2013 / 19:51

3 respostas

1

Se você quiser enviar o tráfego proveniente de wlan0 down tun0, mas o tráfego que se origina localmente para ir para eth0, a maneira mais fácil é simplesmente usar uma tabela de roteamento separada:

# enable IP forwarding
sysctl -w net.ipv4.ip_forward 1

# Add a "default rule" to a non-default routing table
ip route add default dev tun0 table 10

# Specify that this table is to be used for anything from the wlan interface
ip rule add iif wlan0 table 10

... e deveria ser isso, na verdade. Isso pressupõe que você não precisa de NAT; se você controlar o servidor VPN e o intervalo de endereços IP wlan, isso deve ser simples.

    
por 06.12.2013 / 20:52
0

Então, admitindo que todos os endereços IP privados serão roteados para a sua rede de trabalho, eu faria algo assim.

route add default gw tun0
route add 10.0.0.0/8 gw eth0
route add 172.16.0.0/12 gw eth0
route add 192.168.0.0/16  gw eth0

Eu não tenho um linux para testar essa configuração, mas é como deve ser. Provavelmente há erro na sintaxe exata. mas você tem a ideia

    
por 29.11.2013 / 14:51
0

Depende da configuração do seu servidor OpenVpn tun. Basicamente, ele lida somente com redes (!) Definidas pelo lado do servidor.
Então, a sua configuração para usuários wlan0 (digamos, 192.168.0.0/24) via tun0 será feita da seguinte forma:

iptables -t mangle -A PREROUTING -s wlan0 -j MARK --set-mark 1
iptables -A FORWARD -o tun0 -j ACCEPT
iptables -A POSTROUTING -o tun0 -j MASQUERADE

Isto marca todos os pacotes, vindos de wlan0 e define o endereço tun0 como endereço de origem e, claro, permite o encaminhamento. Claro, o encaminhamento de ip deve me habilitado em sysctl.
Adicione a tabela de roteamento a /etc/iproute2/rt_tables - por exemplo, 100 wlantun

ip rule add fwmark 1 table wlantun
ip rule add default via ${tun gw} dev tun0 table wlantun

Isso roteará todos os pacotes do mercado para tun0. No entanto, sugiro usar tap em vez de tun tunnel para alcançar o resultado.

    
por 06.03.2017 / 15:52