Назад | Перейти на главную страницу

Блокировка соединения на основе HTTP-заголовка

Я запускаю уникальную настройку брандмауэра с использованием различных вещей, которые предлагает стоечное пространство (балансировщик нагрузки и облака, и я установил squid для проксирования HTTP-запросов через облака). Моя установка практически блокирует все атаки, кроме HTTP-флуда. Проблема в том, что у меня нет доступа SSH к балансировщику нагрузки, чтобы сообщить ему о блокировке атакующих IP-адресов, и к тому времени, когда он достигает облака, подключающийся IP-адрес является балансировщиком нагрузки. Однако балансировщик нагрузки отправляет клиентский IP-адрес в заголовке. Есть ли способ настроить брандмауэр для чтения (и блокировки) IP-адресов из заголовка?

Использование CentOS6.0 на балансировщике нагрузки

Вы не можете заставить систему межсетевого экрана iptables читать содержимое уровня HTTP и блокировать его. Есть несколько модулей согласования «уровня 7», но они, как правило, не подходят и не поддерживаются в разумных пределах.

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

Вам будет лучше воспользоваться одним из многих инструментов, например fail2ban этот процесс регистрирует нежелательный контент, затем добавляет правила iptables или, что полезно, выполняет какое-то другое действие, например, делает все возможное, чтобы заблокировать атаку в восходящем направлении.

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

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