Как заблокировать отказ в обслуживании (DoS) с нулевым маршрутом

высокая загрузка сервера

В этой статье описывается, как я узнаю IP-адрес отказа в обслуживании (DoS) и null route , чтобы решить проблему высокой нагрузки на моем сервере.

1. Высокая нагрузка

В последнее время на сервере произошла аномально высокая нагрузка, загрузка ЦП в среднем составляет 15-20%.

#top

load average: 15.08, 18.30, 20.63

2. Кто связан?

Не уверен, что это атака DOS или только один IP-адрес нарушает соединение?

Введите следующую команду для ссылки://linux/list-all-ip-address-connected-to-your-server/[вывести список всех IP-адресов, подключенных к моему серверу].

#netstat -tn 2>/dev/null | grep :80 | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr | head

     215 122.163.226.243
     189 114.198.236.100
     156 120.63.179.245
     38 141.0.9.20
     37 49.248.0.2
     37 153.100.131.12
     31 223.62.169.73
     30 65.248.100.253
     29 203.112.82.128
     29 182.19.66.187

Ниже 3 IP-адресов принимают 150 соединений, что действительно ненормально, что они пытаются сделать?

 215 122.163.226.243
 189 114.198.236.100
 156 120.63.179.245

P.S Google выше IP-адресов, 2 из Индии, 1 из Пакистана .

3. нулевой маршрут

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

null route command

route add 122.163.226.243 gw 127.0.0.1 lo
route add 114.198.236.100 gw 127.0.0.1 lo
route add 120.63.179.245 gw 127.0.0.1 lo

Альтернативная команда + Вы также можете использовать следующую команду, чтобы обнулить IP-адреса, оба делают одно и то же.

route add -host 122.163.226.243 reject
route add -host 114.198.236.100 reject
route add -host 120.63.179.245 reject

Использует netstat -nr для отображения всех маршрутов, чтобы убедиться, что он добавлен в таблицу маршрутов.

# netstat -nr
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
114.198.236.100 127.0.0.1       255.255.255.255 UGH       0 0          0 lo
120.63.179.245  127.0.0.1       255.255.255.255 UGH       0 0          0 lo
122.163.226.243 127.0.0.1       255.255.255.255 UGH       0 0          0 lo

Готово, подождите несколько секунд и снова проверьте загрузку сервера, теперь он вернулся в нормальное состояние.

#top

load average: 1.08, 5.30, 30.63

Проверьте все подключенные IP-адреса еще раз, IP-адреса этих атакующих исчезли:

#netstat -tn 2>/dev/null | grep :80 | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr | head

     40 141.0.9.20
     37 49.248.0.2
     36 153.100.131.12
     31 223.62.169.73
     25 65.248.100.253
     29 203.112.82.128
     29 182.19.66.187
     38 142.0.9.20
     28 141.121.9.20
     38 141.0.9.201

Готово.

4. Удалить нулевой маршрут

Чтобы удалить существующие IP-адреса с нулевым маршрутом, используется route delete .

route delete 122.163.226.243
route delete 114.198.236.100
route delete 120.63.179.245

Рекомендации

, ссылка://linux/list-all-ip-адреса-подключены к вашему серверу/[список всех

IP-адреса, подключенные к серверу], https://www.liquidweb.com/kb/basic-dosddos-mitigation-with-the-csf-firewall/ [Basic

Снижение DoS/DDoS с помощью CSF Firewall]

ссылка://тег/DOS/[DoS]ссылка://тег/IP-адрес/[IP-адрес]ссылка://тег/нулевой маршрут/[нулевой маршрут]