Блокировка рекламы и вредоносных доменов
PRX-SD включает встроенный движок adblock, который блокирует рекламу, трекеры и известные вредоносные домены на уровне DNS путём записи записей в системный файл hosts (/etc/hosts в Linux/macOS, C:\Windows\System32\drivers\etc\hosts в Windows). Списки фильтров хранятся локально в ~/.prx-sd/adblock/ и поддерживают как синтаксис Adblock Plus (ABP), так и формат файла hosts.
Принцип работы
При включении adblock PRX-SD:
- Загружает настроенные списки фильтров (EasyList, abuse.ch URLhaus и т.д.)
- Разбирает правила ABP (
||domain.com^) и записи hosts (0.0.0.0 domain.com) - Записывает все заблокированные домены в системный файл hosts, указывая их на
0.0.0.0 - Записывает каждый заблокированный DNS-запрос в
~/.prx-sd/adblock/blocked_log.jsonl
TIP
Для полной DNS-фильтрации с перенаправлением запросов объедините adblock с DNS-прокси. Прокси интегрирует правила adblock, IOC-фиды доменов и пользовательские списки блокировок в единый резолвер.
Команды
Включение защиты
Загрузить списки фильтров и установить DNS-блокировку через файл hosts. Требуются права root/администратора.
sudo sd adblock enableВывод:
>>> Enabling adblock protection...
Loaded 4 lists (128432 rules)
success: Adblock enabled: 95211 domains blocked via /etc/hosts
Lists: ["easylist", "easyprivacy", "urlhaus-domains", "malware-domains"]
Log: /home/user/.prx-sd/adblock/blocked_log.jsonlОтключение защиты
Удалить все записи PRX-SD из файла hosts. Учётные данные и кешированные списки сохраняются.
sudo sd adblock disableСинхронизация списков фильтров
Принудительно перезагрузить все настроенные списки фильтров. Если adblock в данный момент включён, файл hosts автоматически обновляется с новыми правилами.
sudo sd adblock syncПросмотр статистики
Отобразить текущий статус, загруженные списки, количество правил и размер журнала блокировок.
sd adblock statsВывод:
Adblock Engine Statistics
Status: ENABLED
Lists loaded: 4
Total rules: 128432
Cache dir: /home/user/.prx-sd/adblock
Last sync: 2026-03-20T14:30:00Z
Blocked log: 1842 entries
- easylist
- easyprivacy
- urlhaus-domains
- malware-domainsПроверка URL или домена
Проверить, заблокирован ли конкретный URL или домен текущими списками фильтров.
sd adblock check ads.example.com
sd adblock check https://tracker.analytics.io/pixel.jsЕсли домен не имеет полного квалификатора со схемой, PRX-SD автоматически добавляет https://.
Вывод:
BLOCKED ads.example.com -> Adsили:
ALLOWED docs.example.comПросмотр журнала блокировок
Отображает последние заблокированные записи из постоянного журнала JSONL. Флаг --count управляет количеством отображаемых записей (по умолчанию: 50).
sd adblock log
sd adblock log --count 100Каждая запись журнала содержит временную метку, домен, URL, категорию и источник.
Добавление пользовательского списка фильтров
Добавить сторонний или пользовательский список фильтров по имени и URL. Флаг --category классифицирует список (по умолчанию: unknown).
Доступные категории: ads, tracking, malware, social.
sd adblock add my-blocklist https://example.com/blocklist.txt --category malwareУдаление списка фильтров
Удалить ранее добавленный список фильтров по имени.
sd adblock remove my-blocklistВстроенные списки фильтров
PRX-SD поставляется со следующими встроенными источниками фильтров:
| Список | Категория | Описание |
|---|---|---|
| EasyList | Реклама | Поддерживаемый сообществом список фильтров рекламы |
| EasyPrivacy | Трекеры | Защита от трекеров и снятия цифровых отпечатков |
| URLhaus Domains | Вредоносные программы | Домены вредоносных URL abuse.ch |
| Malware Domains | Вредоносные программы | Известные домены распространения вредоносных программ |
Формат списка фильтров
Пользовательские списки могут использовать синтаксис Adblock Plus (ABP) или формат файла hosts:
Формат ABP:
||ads.example.com^
||tracker.analytics.io^Формат hosts:
0.0.0.0 ads.example.com
127.0.0.1 tracker.analytics.ioСтроки, начинающиеся с !, # или [, считаются комментариями и игнорируются.
Структура каталога данных
~/.prx-sd/adblock/
enabled # Флаг-файл (присутствует когда adblock активен)
config.json # Конфигурация списков источников
blocked_log.jsonl # Постоянный журнал блокировок
lists/ # Кешированные файлы списков фильтровWARNING
Включение и отключение adblock изменяет системный файл hosts. Всегда используйте sd adblock disable для чистого удаления записей вместо ручного редактирования файла hosts. Команда требует права root/администратора.
Примеры
Полный рабочий процесс настройки:
# Включить со списками по умолчанию
sudo sd adblock enable
# Добавить пользовательский список блокировки вредоносных программ
sd adblock add threatfox-domains https://threatfox.abuse.ch/export/hostfile/ --category malware
# Синхронизировать для загрузки нового списка
sudo sd adblock sync
# Проверить, что известный вредоносный домен заблокирован
sd adblock check malware-c2.example.com
# Проверить статистику
sd adblock stats
# Просмотреть последние блокировки
sd adblock log --count 20Отключить и очистить:
sudo sd adblock disableСледующие шаги
- Настройте DNS-прокси для полной DNS-фильтрации с перенаправлением запросов
- Настройте вебхук-оповещения для получения уведомлений при блокировке доменов
- Изучите справочник CLI для полного списка команд