Encaminhar endereço remoto para local, DNAT apenas preso

1

O servidor tem um endereço IP 192.168.154.200 , quando me conecto à porta 80, gostaria que isso fosse encaminhado para 127.0.0.1:8000 , semelhante a proxy_pass http://127.0.0.1:8000 de nginx.

Então eu tentei o seguinte,

sysctl -w net.ipv4.ip_forward=1
iptables -t nat -I PREROUTING -d 192.168.154.200 -p tcp --dport 80 -j DNAT --to 127.0.0.1:8000
iptables -t nat -A POSTROUTING -j MASQUERADE

Ele não funciona, quando eu faço curl 192.168.154.200 no cliente, ele fica preso, o que eu perdi?

P.S curl 127.0.0.1:8000 funciona no servidor.

    
por daisy 22.01.2017 / 14:46

1 resposta

2

Tente

sysctl -w net.ipv4.conf.eth1.route_localnet=1

ou

sysctl -w net.ipv4.conf.all.route_localnet=1

Talvez seja necessário verificar novamente para garantir que o kernel suporte route_localnet . Substitua a eth1 apropriadamente.

Por favor, note que este route_localnet está desativado por motivos de segurança.

    
por 22.01.2017 / 17:08