Limiting closed port RST response

Столкнулся однажды с такой проблемкой:

kernel: Limiting closed port RST response from 509 to 500 packets/sec

RST - это Reset the connection, т.е. пакет закрытия TCP/IP соединения.

Данная ситуация говорит о том, что сервер сканируют и идет ограничение в 500 пакетов в сек (net.inet.icmp.icmplim=500).

Избавиться от таких ошибок и вреда, который наносит такая атака на сервер можно следующими параметрами ядра:

net.inet.tcp.blackhole=2 - данная опция указывает, что происходит при получении TCP-пакета на закрытый порт (не слушаемый никакими приложениями). Если стоит 1, то SYN пакеты пакет, устанавливающий соединение) на закрытый порт будут отклоняться без отсылки отправителю RST пакета. При установке в 2, вообще все, а не только SYN пакеты на закрытый портотбрасываются без каких-либо действий. Данный пункт позволяет разгрузить ЦП, т.к. обработка пакетов не производится, и интернет-канал сервера - т.к. не надо слать ответных пакетов.

net.inet.udp.blackhole=1 - очень похож на предыдущий пункт, но для протокола UDP. Ввиду того, что протокол UDP работает без установки соединения, есть только два, а не три варианта установки, когда эта переменная установлена в 1, то отбрасываются все UDP пакеты, адресованые закрытым портам.

Делаем:

#sysctl net.inet.tcp.blackhole=2

#sysctl net.inet.udp.blackhole=1

И не забываем внести изменения в файл /etc/sysctl.conf:

net.inet.tcp.blackhole=2
net.inet.udp.blackhole=1

Обновлено 22.04.2016 11:36

unix-way