Хост ОС: 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.
