Гео-блокировка
Гео-блокировка смотрит, откуда пришёл посетитель: из какой он страны и к какой сети относится его адрес. Региональный магазин может открыть доступ только странам, куда доставляет товар. Сайт, на который большинство атак идёт из нескольких стран, может закрыть доступ этим странам, а любой сайт может отсечь облачные сети, откуда приходит почти весь автоматический трафик.
Включите её в настройках сайта: вкладка Дополнительно, раздел Гео-блокировка. Заблокированные посетители получают 404 или вашу собственную страницу блокировки.
Базы GeoIP
Гео-блокировка работает с базами MaxMind в формате .mmdb. WardPane читает их из /var/lib/wardpane/geoip (параметр GEOIP_DIR в .env).
- База стран: GeoLite2-Country или GeoLite2-City (или коммерческие версии GeoIP2). Нужна для правил по странам. Если есть и файл City, и файл Country, используется City.
- База ASN: GeoLite2-ASN. Нужна для правила по сетям хостингов и для номеров AS.
install.sh копирует все файлы .mmdb, которые найдёт рядом с собой или в папке ./maxmind/. Файлы можно положить в папку и самому: панель ищет новые или изменённые файлы каждые 10 минут и записывает в журнал каждую загруженную базу.
Автоматическое обновление
Если у вас есть бесплатная учётная запись MaxMind, WardPane сам обновляет базы. Создайте лицензионный ключ в своей учётной записи MaxMind, затем введите ID учётной записи и ключ в Настройки > Интеграции или пропишите их в /opt/wardpane/.env:
MAXMIND_ACCOUNT_ID=123456
MAXMIND_LICENSE_KEY=your_license_key
Панель проверяет базы раз в день и скачивает заново ту, чья копия на диске старше 7 дней. По умолчанию она обновляет ту базу стран, которая у вас уже есть (City, если установлен файл City, иначе Country), плюс ASN. MAXMIND_EDITIONS задаёт редакции явно. Скачанный файл, который не удаётся прочитать, никогда не заменяет рабочий.
City или Country и расход памяти
База City занимает в памяти около 100 МБ. На сервере с 512 МБ RAM ставьте вместо неё GeoLite2-Country (около 10 МБ). Для блокировки нужна только страна, так что вы ничего не теряете.
Без базы стран правила по странам не применяются, и панель показывает предупреждение в разделе «Гео-блокировка». Фильтр по языку работает без всякой базы.
Запрещены или Разрешены
| Режим | Действие |
|---|---|
| Запрещены | Блокировать выбранные страны, пускать всех остальных. |
| Разрешены | Пускать только выбранные страны, блокировать всех остальных. |
Для режима «Разрешены» нужна хотя бы одна страна, иначе был бы заблокирован весь мир; такое правило панель не сохранит.
Чтобы добавить страну, введите название или двухбуквенный код и нажмите Enter; страна появится в виде метки. Страна определяется по реальному IP-адресу посетителя, в том числе за Cloudflare, когда включён этот переключатель.
Группы стран
Вместо того чтобы выбирать десятки стран по одной, добавьте группу. Всего групп 27.
Организации:
- Бывший СССР (все 15 бывших советских республик, включая страны Балтии)
- СНГ: нынешние и бывшие участники (включая Грузию и Украину, которые вышли, Молдову, которая выходит, и ассоциированного члена Туркменистан)
- Евразийский экономический союз
- ОДКБ (Армения заморозила участие, но формально остаётся членом)
- Европейский союз
- Европейская экономическая зона (ЕС плюс Исландия, Лихтенштейн и Норвегия)
- Шенгенская зона
- НАТО
- «Пять глаз» (Five Eyes)
- G7 («Большая семёрка»)
- Страны G20 (страны-участницы; ЕС и Африканский союз не страны)
- ОЭСР
- БРИКС (полноправные члены; Саудовская Аравия не подтвердила членство и не включена)
- Шанхайская организация сотрудничества
- АСЕАН
- Совет сотрудничества стран Персидского залива
- Лига арабских государств
- МЕРКОСУР (полноправные члены; членство Венесуэлы приостановлено, и она не включена)
Регионы:
- Ближний Восток
- Латинская Америка
- Европа
- Азия
- Африка
- Северная Америка (включая Центральную Америку и Карибские острова)
- Южная Америка
- Океания
- Антарктида
Состав групп указан на октябрь 2026 года. Континенты соответствуют геосхеме ООН с обычными поправками: Россия и Кипр в Европе, Турция и Кавказ в Азии. Подсказка к каждой группе в панели объясняет спорные случаи.
Сайт хранит ссылку на группу и не копирует её страны. Когда обновление панели меняет группу (страна вступает или выходит), ваше правило подхватывает изменение автоматически.
Исключения и итоговый список
Исключения (поле «Кроме этих стран») задают страны, к которым правило никогда не применяется, даже если они входят в группу или выбраны вами. Например:
- «Запрещены», группа «СНГ: нынешние и бывшие участники», исключение Казахстан: заблокировать СНГ, кроме Казахстана.
- «Разрешены», группа «Европейский союз», исключение Венгрия: пускать только ЕС, без Венгрии.
Под списками панель показывает итоговый список: какие именно страны охватывает правило после объединения ваших стран, групп и исключений. Если в режиме «Разрешены» исключения убирают всё, панель об этом сообщит.
Посетители с неизвестной страной
Некоторых адресов нет ни в одной базе, например совсем новых выделений и зарезервированных диапазонов. По умолчанию их пускают. Чтобы блокировать их, отметьте Блокировать посетителей, чью страну не определить. Это работает в обоих режимах.
Сети хостингов и облаков
Блокировать хостинги и облака закрывает доступ посетителям из сетей крупных хостинг- и облачных провайдеров. Живые люди редко заходят на сайты из дата-центра, а скрипты, сканеры, парсеры и многие VPN работают как раз оттуда. В списке Amazon AWS, Microsoft Azure, Google Cloud, Oracle Cloud, IBM Cloud, Alibaba Cloud, Tencent Cloud, Huawei Cloud, DigitalOcean, Hetzner, OVH, Akamai/Linode, Vultr, Contabo, Scaleway, Leaseweb, M247, Datacamp/CDN77, Hostinger, Selectel, Timeweb, Hostkey, FranTech/BuyVM, Psychz и Aeza.
Для этого нужна база ASN. Правило работает и в режиме «Запрещены», и в режиме «Разрешены», вдобавок к правилу по странам. Поисковые системы, боты превью ссылок и ваш собственный мониторинг тоже могут работать из этих сетей. Если они вам нужны, проверьте результат в статистике или разрешите их адреса в белом списке сайта.
Номера AS
В поле Также блокировать сети (номера AS) задаётся ваш собственный список сетей в виде AS12345 или 12345, через запятую или по одному на строку. Пригодится для провайдера, с адресов которого ваш сайт постоянно атакуют. Нужна база ASN.
Порядок проверок внутри гео-блокировки
- Язык браузера (самая дешёвая проверка, база не нужна).
- Сети хостингов и облаков.
- Ваши номера AS.
- Неизвестная страна.
- Правило по странам («Запрещены» или «Разрешены»).
Адреса из белого списка сайта пропускают все эти проверки. Если сайт проксируется через Cloudflare, но не отмечен как «За Cloudflare», каждый запрос приходит с адреса Cloudflare, по которому о посетителе ничего не узнать. Для таких запросов проверки страны и сети пропускаются, и работает только фильтр по языку.
Проверка IP
Внизу раздела «Гео-блокировка» введите адрес (например, 8.8.8.8) и нажмите Проверить. Панель покажет его страну, сеть (номер и название AS) и то, считается ли она сетью хостинга. Так удобно проверить правило, прежде чем на него полагаться.
Откат на старую версию
Группы и исключения появились в версии 1.4.0. Итоговый список стран также сохраняется в поле, которое читают старые версии, поэтому при откате ниже 1.4.0 сайт продолжает блокировать ровно те же страны. Редактировать группы там нельзя. Если вы измените правило в старой версии, а потом снова обновитесь, её список стран сохранится, а группы и исключения будут удалены, и в журнале появится запись об этом.