Назад | Перейти на главную страницу

Как ограничить ответы ping (ICMP) на сервере debian 10?

У меня есть VPS с установленным debian 10, который в основном используется для хостинга веб-сайтов. когда я отправляю эхо-запрос на сервер с удаленного компьютера, я могу получать и получать ответы для пакетов размером до 64 КБ, используя -s 65507 флаг. с помощью sudo также позволяет мне увеличить максимальную частоту пинга по умолчанию с 5 в секунду с помощью -i флаг. как man ping страница утверждает, что это правдоподобное поведение.

то, что я хотел бы знать, находится на сервере, как я могу ограничить ответы ping, например, максимум x ответов в секунду и максимальный размер пакета y Kb? так что команда, следующая за командой, НЕ должна быть возможна:

sudo ping example.com -s 65507 -i 0.001

то есть «отправлять 1000 эхо-запросов по 64 Кбайт на example.com каждую секунду».

что приведет к затоплению сервера эхо-запросами со скоростью 64 Мб / с, все из которых получают ответ (хотя и с задержкой) и отправляются обратно на удаленную машину, выдающую эхо-запросы. Повторяю, я НЕ хочу, чтобы это было возможно по понятным причинам. Несмотря на наличие базового брандмауэра и fail2ban, я удивлен, что это вообще возможно и допустимо с настройками конфигурации по умолчанию.

Я погуглил безрезультатно - почти все результаты относятся к выдаче самого пинга, нет ничего о том, как ограничить ответы на целевом сервере. Я тоже пробовал менять /proc/sys/net/ipv4/icmp_ratelimit на меньшее значение, чем 1000 Пакетов ICMP в секунду, но, похоже, это не имеет никакого эффекта, даже при проверке перезагрузки в /etc/sysctl.conf.

В идеале я хотел бы установить максимальный интервал 0,5 секунды и максимальный размер пакета 32 байта, что, на мой взгляд, вполне достаточно и разумно для целей проверки связи, то есть проверки возможности подключения и задержки. тем самым он защитит от ping-флуда, что вызывает серьезную озабоченность, поскольку в настоящий момент сервер подвержен DoS-атакам через этот вектор ICMP.

мне нужен другой инструмент или программное обеспечение, или я что-то упускаю?

Спасибо заранее

Вам, наверное, нужно изменить /proc/sys/net/ipv4/icmp_ratemask также. По умолчанию ограничение не распространяется на эхо-ответы. Видеть http://man7.org/linux/man-pages/man7/icmp.7.html

Существуют примеры ограничения скорости ICMP через брандмауэр. вики nftables, Сопоставления с ограничением скорости. Сбой сервера, Ограничение скорости ICMP-флуд с nftables

Однако брандмауэр хоста не является полным решением, если пропускная способность перегружена. Ядру необходимо получить пакет, прежде чем его можно будет отбросить. Более полная защита от отказа в обслуживании должна быть раньше, через службу с большей пропускной способностью, чем у злоумышленников.