Связаться по Skype: vkarabedyants
Позвонить Написать
+7 (499) 404-28-83

Блог о системном администрировании серверов и сайтов

Установка, настройка программного обеспечения Linux, Windows операционных систем

Ограничение подключений с помощью nginx

В nginx существует ngx_http_limit_conn_module, с помощью которого возможно ограничения количества соединений по определенному условию, например ограничить число соединений с одного IP адреса.

В учет идет не все конекты, а только те в которых есть запросы, для обработки сервером и заголовок прочитан.

Синтаксис: limit_conn зона число;
Где размещается: httpserverlocation

Определяем максимальное значение одного условия. Если превышается значение «числа», то в ответ сервер выдает ошибку 503 (сервис временно не доступен). Пример

Разрешаем не более 5ти подключений с одного IP адреса.

В HTTP/2 и SPDY  параллельные запросы обрабатываются как отдельные соединения, учитывайте это при указании количества соединений.

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

В данном примере два условия ограничения по подключению с одного IP адреса, а так же ограничивается общее количество подключений к виртуальному хосту.
При подключении директив используется принцип наследования, если данные директивы не переопределены на своем уровне.

Синтаксис: limit_conn_log_level info | notice | warn | error;
Значение по умолчанию:
Где размещается: httpserverlocation

Есть возможность изменить код ответа сервера при обработки ограничений

Синтаксис: limit_conn_zone ключ zone=название:размер;
Где размещается: http

Определяет параметр в памяти, для хранения состояния условия. Здесь в качестве условия используется IP адрес. Отличие $remote_addr и переменной $binary_remote_addr, заключается в размере значения длины переменной. Длина $remote_addr -7-15байт, а значение которое она хранит может быть 32 или 64 байта на 32х системах и 64 байта на 64х битных системах. Перемененная $binary_remote_addr -4байта и значение 32 байта 32 битных системах и 64 байта на 64 битных. При переполнении размера зоны, ошибка 503.

Замучили постоянные попытки атак на сервер и сайты, мы поможем Вам настроить защиту вашего сервера и ограничить доступ к сайтам недоброжелателей. Подробнее office@system-admins.ru

Оставить комментарий

Лимит времени истёк. Пожалуйста, перезагрузите CAPTCHA.