5

Есть несколько особо токсичных хозяев там. Нет никаких причин, по которым нам нужно разрешать доступ любого их IP-адреса к нашим серверам. Есть ли способ, которым мы можем заблокировать их, используя их ASN или другой глобальный идентификатор? Я бы предпочел сделать это в HTACCESS для переносимости приложений / серверов, но APF тоже подойдет.

Примером может быть блокирование следующих хостов. Более 50% их IP-адресов уже занесены в черные списки, или они используют точки выхода прокси для таких компаний, как PacketFlip:

  • AS4134 - ChinaNet
  • AS9808 - Guangdong Mobile Com
  • AS16276 - OVH SAS
  • AS15003 - Nobis Tech Group
  • AS36352 - Колокроссинг
  • AS29761 - QuadraNet
  • AS15895 - ПАО «Киевстар»
  • AS50915 - SC Everhost SRL
  • AS53889 - Micfo
  • AS57858 - Fiber Grid OU

4 ответа4

5

Вы можете использовать https://www.enjen.net/asn-blocklist/

Пример, т.е. колокроссинг: https://www.enjen.net/asn-blocklist/index.php?asn=AS36352&type=htaccess

Если вам нужно загрузить его на сервер и не использовать html, добавьте & api = 1 в конец ссылки.

5

Проверьте mod_asn:

mod_asn - это модуль Apache, который использует данные маршрутизации BGP для поиска автономной системы (AS) и сетевого префикса (подсети), который содержит данный (клиентский) IP-адрес.

mod_asn можно использовать как отдельный модуль, а результат поиска может использоваться скриптами или другими модулями Apache. Например, перенаправитель загрузки может основывать свои решения на результатах поиска, предоставляемых mod_asn.

У меня нет прямого опыта с этим, но это звучит многообещающе.

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

Кроме того, вы можете поговорить со своим сетевым администратором, чтобы заблокировать или игнорировать эти ASN на маршрутизаторе, тогда вам не нужно делать это проблемой конфигурации приложения. Основным?) Недостаток подхода mod_asn заключается в том, что он не мешает непослушным IP-адресам пытаться атаковать другие сервисы на вашем хосте или в сети, он только отбрасывает запросы HTTP/HTTPS на настроенные серверы Apache.

0

Итак, что касается этого утверждения: CSF, я хотел уточнить несколько вещей. Вы можете автоматизировать с помощью asn-blocklist. Все, что вам нужно сделать, это добавить '& api = 1' в конец вашего URL. Например: https://www.enjen.net/asn-blocklist/index.php?asn=AS36352&type=nginx&api=1.

Это позволит загрузить сырую версию файла без HTML. Все, что вам нужно сделать после этого, это автоматизировать с помощью простого bash-скрипта при использовании wget, копировании старого файла и перезагрузке вашей программы (nginx).

#!/bin/bash

mkdir /tmp/asn
cd /tmp/asn

wget --content-disposition "https://www.enjen.net/asn-blocklist/index.php?asn=AS36352&type=nginx&api=1"
wget --content-disposition "https://www.enjen.net/asn-blocklist/index.php?asn=AS133165&type=nginx&api=1"
## Repeat wget here for all the asns you want. 

cp /tmp/asn/* /etc/nginx/conf.d/
service nginx reload

rm -rf /tmp/asn
echo done...

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

При этом это просто понимание вашего варианта использования / платформы для автоматизации сценария для ваших личных потребностей.

-1

Хорошо, хотя ответ Маня точен для поиска ASN, он опирается на статические проверки / обновления, а затем вставляет их в запрещающие списки / брандмауэры. Я использовал APF слишком долго. Просматривая конфиги, я понял, что межсетевой экран CSF имеет возможность блокировать через ASN и / или код страны (ISO). Он запрашивает базу данных Maxmind GEOIP. Вот описание из /etc/csf/csf.conf

РАЗДЕЛ: Списки кодов стран и настройки

Код страны для CIDR разрешить / запретить. В следующих двух вариантах вы можете разрешить или запретить диапазоны CIDR для всей страны. Блоки CIDR генерируются из базы данных Maxmind GeoLite Country http://www.maxmind.com/app/geolitecountry и полностью зависят от доступности этой услуги.

Укажите двухбуквенный код (ы) ISO страны. Правила iptables только для входящих соединений

Кроме того, номера ASN также могут быть добавлены в разделенные запятыми списки ниже, которые также содержат коды стран. Те же ПРЕДУПРЕЖДЕНИЯ для кодов стран применяются к использованию ASN. Подробнее о номерах автономных систем (ASN): http://www.iana.org/assignments/as-numbers/as-numbers.xhtml

Вы должны рассмотреть возможность использования LF_IPSET при использовании любого из следующих параметров

ВНИМАНИЕ: Эти списки никогда не являются точными на 100%, и некоторые интернет-провайдеры (например, AOL) используют негеографические обозначения IP-адресов для своих клиентов.

ВНИМАНИЕ: Некоторые списки CIDR огромны, и для каждого требуется правило в цепочке входящих iptables. Это может привести к значительному снижению производительности и в некоторых случаях сделать сервер недоступным. По этой причине (помимо прочего) мы не рекомендуем использовать эти опции

ПРЕДУПРЕЖДЕНИЕ. Из-за нехватки ресурсов на серверах VPS эту функцию нельзя использовать в таких системах, если вы не выбрали очень маленькие зоны CC.

ВНИМАНИЕ: CC_ALLOW разрешает доступ через все порты брандмауэра. По этой причине CC_ALLOW, вероятно, имеет очень ограниченное использование, и CC_ALLOW_FILTER является предпочтительным

Каждый параметр представляет собой список CC, разделенных запятыми, например, «US, GB, DE»

Рассматриваются следующие параметры conf:

CC_DENY=""

CC_ALLOW=""

И есть более конкретные фильтры под ним в файле conf для дальнейшей блокировки жениха.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .