Redirecionando o tráfego da porta 80 para outra porta em um único IP

Redirecionando o tráfego da porta 80 para outra porta em um único IP

Tenho um servidor com vários endereços IP associados a ele. Estou tentando executar um servidor web node.js (que não quero executar como root), usando apenas um desses endereços IP (seria muito ruim se o tráfego de todos os endereços IP fosse encaminhado).

Através da pesquisa de superusuário, parecia que isso seria possível com o iptables:

Como configurar o iptables para encaminhamento de tráfego na porta 80 de fontes específicas

iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 --source 212.333.111.222 -j REDIRECT --to-port 9020

No entanto, não entendo por que a eth0 é necessária.

De acordo com:

http://blog.softlayer.com/2011/iptables-tips-and-tricks-port-redirection/

isso poderia ser feito com:

iptables -t nat -A PREROUTING -p tcp --dport 2525 -j REDIRECT --to-ports 25

Qual é a forma correta de encaminhar o tráfego de um único IP na porta 80, digamos 111.111.111.111:80 para outra porta no mesmo servidor, digamos 111.111.111.111:8765?

Obrigado pela ajuda!

Responder1

iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8765

Em vez de usar o endereço IP, use o nome da interface, quero dizer, em vez de eth0você pode usar a interface desejada.

Esta regra diz iptables:

  1. Faça isso no PreRouting
  2. Não faça nada
  3. Na interface eth0
  4. O protocolo é TCP
  5. A porta de destino correspondente é 80
  6. Redirecione para a porta 8765

informação relacionada