iptables encaminham todo o tráfego para a interface

10

Eu tenho duas interfaces eth1 e eth0 . Desejo que todo o tráfego em eth0 seja encaminhado para eth1 . Eu criei uma regra de iptable assim:

iptables -A FORWARD -s 0/0 -i eth0 -p tcp -o eth1 -j ACCEPT

Mas isso não funciona. Esta é a maneira correta de fazer isso?

    
por user110 26.04.2014 / 06:34

1 resposta

15

Se você ainda não habilitou o encaminhamento no kernel, faça isso.

  • Abra /etc/sysctl.conf e descomente net.ipv4.ip_forward = 1

  • Em seguida, execute $ sudo sysctl -p

Adicione as seguintes regras a iptables

sudo iptables -t nat -A POSTROUTING --out-interface eth1 -j MASQUERADE  
sudo iptables -A FORWARD --in-interface eth0 -j ACCEPT

Todo o tráfego encaminhado atravessará a cadeia FORWARD. Para filtrar os pacotes, você terá que criar regras nessa cadeia especificando qual interface é recebida / enviada em vez de usar as cadeias INPUT / OUTPUT.

    
por 26.04.2014 / 06:48

Tags