حظر الإعلانات والنطاقات الضارة
يتضمن PRX-SD محرك adblock مدمج يحظر الإعلانات والمتتبعات والنطاقات الضارة المعروفة على مستوى DNS عن طريق كتابة إدخالات في ملف hosts النظام (/etc/hosts على لينكس/macOS، C:\Windows\System32\drivers\etc\hosts على ويندوز). تُخزَّن قوائم التصفية محلياً تحت ~/.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 - تسجيل كل بحث عن نطاق محظور في
~/.prx-sd/adblock/blocked_log.jsonl
TIP
للتصفية الكاملة على مستوى DNS مع إعادة التوجيه إلى الخادم المنبع، ادمج adblock مع وكيل DNS. يدمج الوكيل قواعد adblock وموجات نطاق IOC وقوائم الحظر المخصصة في محلل واحد.
الأوامر
تمكين الحماية
تنزيل قوائم التصفية وتثبيت حظر DNS عبر ملف hosts. يتطلب صلاحيات الجذر/المسؤول.
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 | البرامج الضارة | نطاقات URLhaus الضارة من 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 # Flag file (present when adblock is active)
config.json # Source list configuration
blocked_log.jsonl # Persistent block log
lists/ # Cached filter list filesWARNING
تمكين وتعطيل adblock يُعدِّل ملف hosts النظام. استخدم دائماً sd adblock disable لإزالة الإدخالات بنظافة بدلاً من تحرير ملف hosts يدوياً. يتطلب الأمر صلاحيات الجذر/المسؤول.
أمثلة
سير عمل الإعداد الكامل:
# تمكين بالقوائم الافتراضية
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 مع إعادة التوجيه إلى الخادم المنبع
- تهيئة تنبيهات Webhook للحصول على إشعارات عند حظر النطاقات
- استكشاف مرجع CLI للحصول على قائمة الأوامر الكاملة