Есть ли способ заблокировать IP-адрес злоумышленника (или любой IP-адрес), когда наш сервер находится за балансировщиком нагрузки. Например, если мои серверы находятся за ELB (Amazon ELB) или балансировщиком нагрузки Rackspace, я получаю атаки и знаю фактический IP-адрес злоумышленника. как я могу заблокировать эти IP-адреса?
С Уважением,
ELB не позволяет блокировать IP-адреса на уровне ELB. Сами ваши серверы должны будут отклонять трафик. ELB проходит X-Forwarded-For
заголовок с IP-адресом запрашивающего, который вы можете использовать для этого.
Зависит от того, что вы имеете в виду под блокировкой; вы, конечно, можете использовать mod_access чтобы запретить доступ к определенным IP-адресам (для этого вам также понадобится mod_rpaf). С другой стороны, я не понимаю, почему вы не можете заблокировать доступ к балансировщикам нагрузки, но опять же, я не знаком с деталями ELB; возможно они не позволяют сильно вмешиваться в LBs.
По состоянию на сентябрь 2017 г. AWS выпустила Network Load Balancer, который имеет ряд новых функций.
Один из них - Сохранение исходного адреса - При использовании Network Load Balancer исходный IP-адрес источника и исходные порты для входящих подключений остаются неизменными, поэтому прикладное программное обеспечение не должно поддерживать X-Forwarded-For, протокол прокси или другие обходные пути. Это также означает, что на целевых объектах можно использовать обычные правила брандмауэра, включая группы безопасности VPC.
из Новый балансировщик сетевой нагрузки
Это позволит использовать iptables, ipchains на уровне ОС или любой другой брандмауэр TCP / IP.
Итог:
1) AWS ELB не позволяет фильтровать трафик по IP.
2) Трафик, исходящий из Classic или Application ELB, не может быть отфильтрован на уровне TCP (за исключением нового сетевого LB, см. Выше), потому что он весь идет от ELB, что касается сетевого брандмауэра.
3) ELB добавляет X-Forwarded-For в заголовок http, чтобы трафик можно было фильтровать на уровне приложения, например, с помощью Apache, Nginx, Varnish.