Недавно мой apache получил DoS-атаку, это произошло SYN-запрос злоумышленника к нашему apache, я знаю, потому что в то время у меня был включен wirehark.
После завершения атаки я перезапускаю свой apache, и все возвращается в нормальное состояние. Но проблема, когда я проверяю свой статус сервера из статуса мода, отображаются некоторые потоки
> 0-92 61968 0/0/674 R 1125 0 0.0 0.00 22.93 ? ? ..reading..
> 0-92 61968 0/0/29 R 537889 0 0.0 0.00 0.01 ? ? ..reading..
> 0-92 61968 0/0/852 R 1158 15 0.0 0.00 15.05 ? ? ..reading..
> 0-92 61968 0/0/2 R 537933 578 0.0 0.00 0.02 ? ? ..reading..
> 0-92 61968 0/0/3 R 537933 0 0.0 0.00 0.02 ? ? ..reading..
> 0-92 61968 0/0/1 R 538060 0 0.0 0.00 0.00 ? ? ..reading..
> 0-92 61968 0/0/2 R 538060 0 0.0 0.00 0.01 ? ? ..reading..
> 0-92 61968 0/0/71 R 538146 0 0.0 0.00 0.00 ? ? ..reading..
> 0-92 61968 0/0/31 R 538146 0 0.0 0.00 0.01 ? ? ..reading..
> 0-92 61968 0/0/0 R 1287665833 0 0.0 0.00 0.00 ? ? ..reading..
> 0-92 61968 0/0/0 R 1287665833 0 0.0 0.00 0.00 ? ? ..reading..
> 0-92 61968 0/0/0 R 1287665833 0 0.0 0.00 0.00 ? ? ..reading..
> 0-92 61968 0/0/0 R 1287665833 0 0.0 0.00 0.00 ? ? ..reading..
> 0-92 61968 0/0/0 R 1287665833 0 0.0 0.00 0.00 ? ? ..reading..
> 0-92 61968 0/0/0 R 1287665833 0 0.0 0.00 0.00 ? ? ..reading..
> 0-92 61968 0/0/0 R 1287665833 0 0.0 0.00 0.00 ? ? ..reading..
> 0-92 61968 0/0/0 R 1287665833 0 0.0 0.00 0.00 ? ? ..reading..
> 0-92 61968 0/0/0 R 1287665833 0 0.0 0.00 0.00 ? ? ..reading..
> 0-92 61968 0/0/0 R 1287665833 0 0.0 0.00 0.00 ? ? ..reading..
> 0-92 61968 0/0/0 R 1287665833 0 0.0 0.00 0.00 ? ? ..reading..
> 0-92 61968 0/0/0 R 1287665833 0 0.0 0.00 0.00 ? ? ..reading..
> 0-92 61968 0/0/0 K 1287665833 0 0.0 0.00 0.00
эти ... чтение ... всегда отображаются даже после перезапуска. Вы знаете, как это удалить? а откуда это?
Чтобы проверить, атаковали ли вы все еще:
Введите следующую команду
netstat -plan | grep :80 | awk {'print $5′} | cut -d: -f 1 | sort | uniq -c | sort -n
Вы увидите список IP-адресов с количеством подключений к вашему серверу.
Если какие-либо IP-адреса имеют более 100 подключений, есть вероятность, что это ваш злоумышленник. Заблокируйте этот IP-адрес с помощью APF, если он у вас установлен, или CSF.
apf -d IP
или
csf -d IP
Я недавно видел некоторые из них в моем apache-status. Похоже, они автоматически уходят за мной. Я тоже ищу объяснение.
Что касается того, что эти процессы не исчезают после перезапуска, вы можете попытаться остановить apache:
killall -KILL httpd
Затем перезапустите его. Вероятно, это зомби-процессы, которые apache не может убить самостоятельно при перезапуске.
Я знаю, что такие атаки практически невозможно предотвратить, но просто убедился: вы настроили Apache? TimeOut
значение вообще, или оно установлено на значение по умолчанию (я думаю, 300 секунд)? Если это значение по умолчанию 300 секунд, вы можете смело изменить его на какое-нибудь значительно меньшее значение, например 15
или 30
секунд.