IPtables для виртуального выделенного сервера.
Я хотел бы заблокировать сканирование UDP, и мне было интересно, есть ли минимальный размер пакета для поиска DNS?
Nmap отправляет 0-байтовые UDP-пакеты (источник: http://nmap.org/bennieston-tutorial/ ), но, вероятно, доступны инструменты, позволяющие добавить несколько байтов.
Кроме того, я не совсем понимаю, как UDP-пакеты nmap могут быть 0 байтами.
Ограничение по размеру, вероятно, не то, что вам нужно. С помощью Nmap в качестве примера сканера обратите внимание, что с параметром --data-length злоумышленник может использовать пакеты любой длины. Кроме того, как я прокомментировал под вашим вопросом, Nmap использует допустимые данные для 39 наиболее распространенных портов UDP, чтобы запросить полезную нагрузку. Не говоря уже о том, что некоторые протоколы позволяют и даже требуют от сервера ответа на пустой пакет.
Но не отчаивайтесь. Iptables может многое сделать, чтобы усложнить жизнь тем, кто хочет вас просканировать. Сканирование UDP является общеизвестно трудным, поскольку условие успеха (открытый порт) в большинстве случаев отрицательное (нет ответа). Linux уже ограничивает скорость ответа закрытого порта (сообщения ICMP о недоступности порта) до одного сообщения в секунду, что делает сканирование еще медленнее. Вот несколько идей:
DROP
цель вместо REJECT
значительно замедлит сканирование.limit
и hashlimit
соответствующие модули, чтобы установить верхние границы разумной скорости подключения. Однако будьте осторожны с ними, иначе вы заблокируете законный доступ.Кроме того, я не совсем понимаю, как UDP-пакеты nmap могут быть 0 байтами.
0 байт полезной нагрузки. В пакете остались заголовки IP и UDP.
Мне было интересно, есть ли минимальный размер пакета для поиска DNS?
Что ж, давайте посмотрим http://www.netfor2.com/dns.htm так как это легче читать, чем RFC.
Каждый октет - это байт, поэтому у нас есть:
Таким образом, любой пакет, приходящий на сервер, должен иметь не менее 17 байт полезной нагрузки + Заголовки IP, UDP и канального протокола.