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.