Нотатки сісадміна Linux,nginx Лимит подключений с одного IP

Лимит подключений с одного IP


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

Началось все с того что у заказчика было 11 серверов с кучей сайтов, на всех сайтах висел код разных бирж ссылок типа сапы, эти биржи имели привычку пару раз в день ползать и сканировать сайты, естественно это приводило к повышенной нагрузке на сервре, так как сканировали сразу кучу доменов, а их на одном серваке доходило до полтиника.

Помогло решение вот такое на основе iptables + nginx:

iptables -I INPUT -p tcp --dport 80 -i eth0 -m state --state NEW -m recent --set

iptables -I INPUT -p tcp --dport 80 -i eth0 -m state --state NEW -m recent --update --seconds 60 --hitcount 10 -j DROP

После этого лимиты подключений с одного IP в nginx:

главный конфиг, раздел http:

limit_conn_zone $binary_remote_addr zone=perip:10m;

limit_conn perip 15;

limit_req_zone $binary_remote_addr zone=dynamic:10m rate=5r/s;

limit_req zone=dynamic burst=15 nodelay;

Click to rate this post!
[Total: 0 Average: 0]

1 коментар до “Лимит подключений с одного IP”

Залиште відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *

Related Post

speedtest-cli

speedtest-cli или проверяем канал сервера в обе стороны.speedtest-cli или проверяем канал сервера в обе стороны.

Сегодня столкнулся в очередной раз как можно проверить канал на выделенном сервере, не всегда есть под рукой пустующий сервак с каналом на 1Гбс. Погуглил – решение оказалось до безумия простое.