Skip to content
Эта страница создана и переведена с помощью ИИ. Если вы заметили неточности, помогите нам улучшить её. Редактировать на GitHub

Блокировка рекламы и вредоносных доменов ​

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:

  1. Загружает настроенные списки фильтров (EasyList, abuse.ch URLhaus и т.д.)
  2. Разбирает правила ABP (||domain.com^) и записи hosts (0.0.0.0 domain.com)
  3. Записывает все заблокированные домены в системный файл hosts, указывая их на 0.0.0.0
  4. Записывает каждый заблокированный DNS-запрос в ~/.prx-sd/adblock/blocked_log.jsonl

TIP

Для полной DNS-фильтрации с перенаправлением запросов объедините adblock с DNS-прокси. Прокси интегрирует правила adblock, IOC-фиды доменов и пользовательские списки блокировок в единый резолвер.

Команды ​

Включение защиты ​

Загрузить списки фильтров и установить DNS-блокировку через файл hosts. Требуются права root/администратора.

bash
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. Учётные данные и кешированные списки сохраняются.

bash
sudo sd adblock disable

Синхронизация списков фильтров ​

Принудительно перезагрузить все настроенные списки фильтров. Если adblock в данный момент включён, файл hosts автоматически обновляется с новыми правилами.

bash
sudo sd adblock sync

Просмотр статистики ​

Отобразить текущий статус, загруженные списки, количество правил и размер журнала блокировок.

bash
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 или домен текущими списками фильтров.

bash
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).

bash
sd adblock log
sd adblock log --count 100

Каждая запись журнала содержит временную метку, домен, URL, категорию и источник.

Добавление пользовательского списка фильтров ​

Добавить сторонний или пользовательский список фильтров по имени и URL. Флаг --category классифицирует список (по умолчанию: unknown).

Доступные категории: ads, tracking, malware, social.

bash
sd adblock add my-blocklist https://example.com/blocklist.txt --category malware

Удаление списка фильтров ​

Удалить ранее добавленный список фильтров по имени.

bash
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/администратора.

Примеры ​

Полный рабочий процесс настройки:

bash
# Включить со списками по умолчанию
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

Отключить и очистить:

bash
sudo sd adblock disable

Следующие шаги ​

Released under the Apache-2.0 License.