DDOS
Ситуация такая:
сайт на Fedora Core 7 (оптимизация для 1С-Битрикс) Virtuozzo
в начале месяца начали ддосить сайт запросами:
domain.com/\x36/xcdf
domain.com/\x7wd
domain.com/\xxd
Вот в таком духе...
Соединений по 80 порту 10 000 - 25 000.
Еще очень важный момент, чтобы не попасть на денюжку - мне нужно отдавать в 4 раза больше чем принял.
Пытался решать проблему при помощи nginx:
error_page 404 500 502 504 =200 /404-error.gif;
location /404-error.gif {
root /home/www;
}
т.е. перехватывать ошибку 404 и отдавать картинку... с трафиком стало все ок.
Но теперь проблема:
Сайты после включения работают макс 10 минут, и падают в 500 ошибку.
cat /proc/user_beancounters показывает
numtcpsock 3072 3072 3072 3072 7462581(!!!)
т.е. сжираются все сокеты.
nginx орет в логах (1 мб в секунду):
2008/11/20 11:56:52 [alert] 11802#0: *1789 socket() failed (105: No buffer space available) while connecting to upstream, client: 92.112.135.235, server: domain.com, request: "GET /цwp HTTP/1.1", upstream: "http://127.0.0.2:80/2", host: "domain.com"
перечитал все что мог найти, пытался варьировать конфигом nginx - все впусутую, но интуиция подсказывает что решить проблему можно, но опыта не хватает.