
Очень простой способ прикрыть от посторонних сканеров и брутфорсеров важные сетевые порты такие как:
- SSH
- RDP
- ...
Например, я сталкивался с тем, что брутфорсеры постоянно блокировали учетки в домене windows, долбясь по RDP и передавая пары логин/пароль валидных пользователей. Разумеется, DC блокирует такие учетки, пресекая брутфорс.
Можно придумать еще кучу подобных уязвимостей. И просто неприятно видеть когда на важных портах висят не понятные ESTABLISHED соединения.
Избежать таких ситуаций можно следующим образом:
iptables -A INPUT -p tcp --dport 65432 -m recent --set --name tuktuk
iptables -A INPUT -p tcp --syn --dport 22 -m recent --rcheck --seconds 160 --name tuktuk -j ACCEPT
iptables -A INPUT -p tcp --syn --dport 22 -j DROP
Вот и все!
Кто бы ни попробовал просканировать порт SSH, будет дропнут без разговоров.
Для установки соединения нужно предварительно постучаться на порт 65432.
Например из браузера (http://ваш_адрес:65432)
Или telnet ваш_адрес 65432
Или putty ваш_адрес -p 65432
И потом уже putty ваш_адрес -p 22
Мы же можем осуществлять попытки подключения из откуда угодно и при этом не хотим чтобы кто угодно мог установить соединение по Вашему важному порту?
Пользуйтесь!