Я пытаюсь использовать eboard для подключения к серверам FICS (http://www.freechess.org), но не получается, потому что заблокирован порт 5000 (брандмауэр компании). Однако я могу подключиться к серверу через порт telnet (23):
telnet freechess.org 23
(succeeds)
telnet freechess.org 5000
(fails)
К сожалению, номер порта жестко задан (см. Здесь: http://ubuntuforums.org/archive/index. PHP / т-1613075.html ). Я бы предпочел не взламывать исходный код, как это сделал автор этого потока. Могу ли я просто переслать порт на моей локальной машине, используя iptables? Я пытался:
sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 5000 -j REDIRECT --to-port 23
и
sudo iptables -t nat -I OUTPUT --src 0/0 -p tcp --dport 5000 -j REDIRECT --to-ports 23
, но это не сработало ...
Обратите внимание:
$ 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
перенаправляет на свой компьютер. Если вы хотите перенаправить на другой порт на удаленном компьютере, используйте -j DNAT --to-destination :23