Block Lists
os-blocklists · الحماية
قوائم العناوين والدول وقوائم DNS وبصمات JA4 لعملاء TLS، مجموعةً في صفحة واحدة لقوائم الحظر.
في القائمة
- مع تثبيت os-xgs-npu: XGS: Block Lists
- من دون os-xgs-npu: Firewall: Block Lists

تُختار قوائم العناوين من فهرس قصير لمصادر عامّة: Spamhaus DROP (IPv4 وIPv6)، وabuse.ch Feodo Tracker، وEmerging Threats compromised hosts، وCINS Army، وblocklist.de. وتصبح كل قائمة اسمًا مستعارًا (alias) من نوع URL Table خاصًّا بها، يجلبه OPNsense مرّة في اليوم. وتدخل الدول في اسم مستعار واحد من نوع GeoIP، يحتاج إلى مصدر GeoIP في Firewall: Aliases. وقد استُبعدت FireHOL level 1 عمدًا: فهي تحمل الشبكات الخاصّة، وإذا حُظرت في الاتجاهين عزلت الجدار الناري عن شبكته المحلية (LAN).
تسجّل الإضافةُ قواعدَ الحظر عند كل إعادة تحميل للمرشِّح - واردةً من عنوان مُدرَج، وصادرةً إليه افتراضيًّا، على كل واجهة، قبل قواعد الواجهات. ولا تُضاف أبدًا إلى قواعد المالك نفسه، فإيقاف الإضافة أو إزالتها لا يترك فيها شيئًا. ولا يُحظر شيء حتى تُختار القوائم وتُطبَّق.
قاعدة الحظر توقف الاتصالات الجديدة فقط. ومع تفعيل «Cut open connections»، يُقطع خلال دقيقة أيُّ اتصال مفتوح أصلًا من عنوان أو إليه أضافته قائمة للتوّ، وعلى جهاز Sophos XGS يُخرَج أيضًا من المعالج المساعد مع حالته: فالمعالج المساعد لا يحمل قائمة عناوين خاصّة به يحظر بها. ومع تثبيت os-xgs-npu، تُترك القائمة أو البصمة المذكورة في XGS: Settings لـ os-xgs-npu، فلا يُقطع شيء مرّتين.
الميزات
-
قوائم عناوين عامّة
Spamhaus DROP وabuse.ch Feodo Tracker وEmerging Threats وCINS Army وblocklist.de، لكلٍّ منها اسم مستعار خاص من نوع URL Table، مع تفعيل العدّادات.
-
الدول
اسم مستعار واحد من نوع GeoIP هو blocklists_countries؛ ويحتاج إلى مصدر GeoIP في Firewall: Aliases.
-
قواعد خاصّة بها
تُسجَّل عند كل إعادة تحميل للمرشِّح، قبل قواعد الواجهات، ولا تُكتب أبدًا في قواعد المالك، فلا يبقى شيء بعد إيقاف الإضافة أو إزالتها.
-
قطع الاتصالات المفتوحة
خلال دقيقة من إضافة قائمةٍ عنوانًا؛ وعلى جهاز Sophos XGS، يُخرَج الاتصال أيضًا من المعالج المساعد مع حالته.
-
بصمات JA4
تُقطع اتصالات TLS التي يُظهر عميلها بصمة مُدرَجة، بقراءة سجلّ TLS في Intrusion Detection كل ثانيتين؛ وتسرد الصفحة البصمات التي رُصدت، لإيجاد البصمة المراد إدراجها.
-
قوائم DNS في الصفحة نفسها
يحتفظ بها OPNsense نفسه في Services: Unbound DNS: Blocklists؛ وتعرضها الصفحة بجانب غيرها وتُحيل إليها.
التثبيت والتحديث
ابتداءً من إصدار os-xgs-npu الذي يلي 0.1.0-alpha.7.1، تظهر الإضافة في تبويب Plugins في XGS: Updates - فتُحدَّث النسخة المثبّتة منها هناك يدويًّا، وتُثبَّت منه حيث لا توجد - وتحملها الصور الجاهزة المبنية من ذلك الإصدار؛ وحتى ذلك الحين تُثبَّت وتُحدَّث كما يلي. ومُدخَل cron الخاص بالإضافة يُشغِّل القطع كل دقيقة، ولا يُشغِّل التحديث أبدًا. ولتثبيتها على جهاز XGS أو على أيّ OPNsense آخر، بصلاحيات root: من نسخة مستنسخة من المستودع بالأمر sh install/install.sh، الذي يضع الصفحة تحت XGS مع os-xgs-npu وتحت Firewall من دونه، ويحفظ الإعدادات إذا أُعيد تشغيله؛ أو من حزمة الإصدار os-blocklists-1.0.0.pkg، بعد التحقّق منها بـ SHA256SUMS، وإضافتها بـ pkg. والنسخة المثبّتة بهذه الطريقة تُحدَّث بسكربتها self-update.py. وإزالة الإضافة تُخرج قواعدها من pf؛ وتبقى أسماؤها المستعارة في Firewall: Aliases دون أن تحظر شيئًا. والإضافة ليست في مستودع إضافات OPNsense.
الحدود، وما لم يُختبر بعد
- كتابة الأسماء المستعارة من الصفحة (apply.php، الذي يحفظ config.xml).
- القواعد وفيها قوائم، وجلب القوائم.
- قطع الاتصالات المفتوحة، والقطع بحسب JA4 عبر هذه الإضافة.
- الحزمة، التي يبنيها tools/make-package.sh وتُضاف بـ pkg.
- التثبيت على OPNsense من دون os-xgs-npu.
- التحديث عبر تبويب Plugins أو self-update.py: الإصدار 1.0.0 هو الأول، فلم يسبق أيُّ إصدار نسخةً مثبّتة.
المستودع
أول إصدار: 2026-10-25