-j REDIRECT
redireciona para sua própria máquina. Se você quiser redirecionar para uma porta diferente na máquina remota, use -j DNAT --to-destination :23
Estou tentando usar o eboard para conectar-me aos servidores FICS (http://www.freechess.org), mas ele falha porque a porta 5000 está bloqueada (firewall da empresa). No entanto, posso ligar ao servidor através da porta telnet (23):
telnet freechess.org 23
(succeeds)
telnet freechess.org 5000
(fails)
Infelizmente, o número da porta é codificado (veja aqui: link ). Eu prefiro não ter que hackear o código-fonte como o autor desse segmento acabou fazendo. Posso apenas encaminhar a porta na minha máquina local usando o iptables? Eu tentei:
sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 5000 -j REDIRECT --to-port 23
e
sudo iptables -t nat -I OUTPUT --src 0/0 -p tcp --dport 5000 -j REDIRECT --to-ports 23
mas isso não funcionou ...
Observe que:
$ sudo iptables -t nat -L
Chain PREROUTING (policy ACCEPT)
target prot opt source destination
REDIRECT tcp -- anywhere anywhere tcp dpt:5000 redir ports 23
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
REDIRECT tcp -- anywhere anywhere tcp dpt:5000 redir ports 23
Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
-j REDIRECT
redireciona para sua própria máquina. Se você quiser redirecionar para uma porta diferente na máquina remota, use -j DNAT --to-destination :23
Tags iptables