redireciona para localhost usando iptables

0

Gostaria de redirecionar o tráfego de saída (vindo do host local ou de outro lugar, pois a máquina é um gateway) indo de 192.168.0.2:80 para localhost:80 .

Eu tentei definir essa regra na tabela nat:

-A PREROUTING -p tcp -d 192.168.0.2 --dport 80 -j DNAT --to-destination 127.0.0.1:80

E acabo com a seguinte regra, quando digito iptables -t nat -L :

DNAT       tcp  --  anywhere             192.168.0.2          tcp dpt:http to:127.0.0.1:80

Mas isso não parece funcionar. O que estou fazendo errado?

    
por rogerJ 01.03.2016 / 17:10

2 respostas

1

Tente verificar novamente se o endereço IP de loopback (127.0.0.1) está configurado para alcançar localhost . Faça um ping para garantir que os dois recebam uma boa resposta em:

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination 
  1. Olhe para o seu iptables:

    sudo iptables -L -n

  2. Tente adicionar esta regra com

    iptables -t nat -A OUTPUT -p tcp --dport 80 -d 192.168.0.2 -j DNAT --to-destination 127.0.0.1:80

por 01.03.2016 / 19:25
0

Em kernels mais novos, isso pode ser alcançado ativando "route_localnet"

sysctl -w net.ipv4.conf.all.route_localnet=1
    
por 02.08.2017 / 08:00