Хост ОС: Ubuntu 16.06 LTS
У меня есть сервер, прослушивающий порт 1233. Я должен перенаправить весь трафик TCP и UDP на порт 1233, кроме порта SSH. Я успешно перенаправил все свои порты на 1233 со следующими правилами IPTable.
*filter
:INPUT ACCEPT [89:12442]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [114:10536]
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
COMMIT
*nat
:PREROUTING ACCEPT [2:64]
:INPUT ACCEPT [2:261]
:OUTPUT ACCEPT [8:524]
:POSTROUTING ACCEPT [8:524]
-A PREROUTING -p tcp -m tcp -j REDIRECT --to-ports 1233
-A PREROUTING -p udp -j REDIRECT --to-ports 1233
COMMIT
Я также добавил правило для порта SSH, но не смог успешно установить соединение SSH с моим сервером, потому что сначала выполняются цепочки PREROUTING
. После поиска я нашел много вопросов, которые выглядят связанными с этим, но ни один не охватывал этот сценарий.
Вы можете быть удивлены вариантом использования этого типа реализации. Это honeypot-сервер, и наша идея состоит в том, чтобы настроить honeypot для прослушивания всего трафика, кроме SSH. Я знаю, что могу определить диапазон портов или использовать многопортовое средство iptables, но я должен перенаправить все свои порты, кроме 22.