مرجع الإعدادات
توثّق هذه الصفحة كل مفتاح إعداد في ~/.prx-sd/config.json. استخدم sd config set <key> <value> لتعديل أي إعداد، أو حرّر ملف JSON مباشرةً.
إعدادات الفحص (scan.*)
الإعدادات التي تتحكم في كيفية معالجة محرك الفحص للملفات.
| المفتاح | النوع | الافتراضي | الوصف |
|---|---|---|---|
scan.max_file_size | integer | 104857600 (100 MiB) | الحد الأقصى لحجم الملف بالبايت. تُتجاوز الملفات الأكبر من هذه القيمة أثناء الفحص. اضبط على 0 لتعطيل الحد (غير موصى به). |
scan.threads | integer | null | null (تلقائي) | عدد خيوط الماسح الضوئي المتوازية. عند null، يستخدم PRX-SD عدد أنوية المعالج المنطقية. اضبط على رقم محدد للحد من التوازي أو زيادته. |
scan.timeout_per_file_ms | integer | 30000 (30 ث) | الحد الأقصى للوقت بالميلي ثانية المسموح بفحص ملف واحد. إذا تجاوز، يُعلَّم الملف كخطأ ويستمر الفحص في الملف التالي. |
scan.scan_archives | boolean | true | ما إذا كان يجب التكرار في ملفات الأرشيف (ZIP، tar.gz، 7z، RAR، إلخ) وفحص محتوياتها. |
scan.max_archive_depth | integer | 3 | الحد الأقصى لعمق التداخل عند التكرار في الأرشيفات. مثلاً، ZIP داخل ZIP داخل ZIP يتطلب عمقاً 3. يمنع هجمات قنبلة zip. |
scan.heuristic_threshold | integer | 60 | الحد الأدنى للنتيجة الاستدلالية (0-100) لتعليم الملف بـ خطير. الملفات التي تحصل على نتيجة بين 30 وهذه العتبة تُعلَّم بـ مشبوه. القيم الأقل تزيد الحساسية لكنها قد تنتج المزيد من الإيجابيات الكاذبة. |
scan.exclude_paths | string[] | [] | قائمة بأنماط glob أو بادئات مسار لاستبعادها من الفحص. تدعم * (أي أحرف) و? (حرف واحد) كبدلاء. |
أمثلة
bash
# زيادة الحد الأقصى لحجم الملف إلى 500 MiB
sd config set scan.max_file_size 524288000
# استخدام 4 خيوط بالضبط
sd config set scan.threads 4
# زيادة مهلة الملف الواحد إلى 60 ثانية
sd config set scan.timeout_per_file_ms 60000
# تعطيل فحص الأرشيف
sd config set scan.scan_archives false
# تعيين عمق تداخل الأرشيف إلى 5
sd config set scan.max_archive_depth 5
# تخفيض عتبة الاستدلاليات لحساسية أعلى
sd config set scan.heuristic_threshold 40
# استبعاد المسارات
sd config set scan.exclude_paths '["/proc", "/sys", "/dev", "*.log", "*.tmp"]'إعدادات الشاشة (monitor.*)
الإعدادات التي تتحكم في مراقبة نظام الملفات في الوقت الفعلي (sd monitor وsd daemon).
| المفتاح | النوع | الافتراضي | الوصف |
|---|---|---|---|
monitor.block_mode | boolean | false | عند true، استخدام أحداث أذونات fanotify (لينكس فقط) لـ حجب الوصول إلى الملفات الضارة قبل أن تتمكن العملية الطالبة من قراءتها. يتطلب صلاحيات root. عند false، تُفحص الملفات بعد الإنشاء/التعديل وتُبلَّغ التهديدات دون حجبها. |
monitor.channel_capacity | integer | 4096 | حجم مخزن قناة الأحداث الداخلية بين مراقب نظام الملفات والماسح الضوئي. زِد هذه القيمة إذا رأيت تحذيرات "channel full" تحت نشاط عالي لنظام الملفات. |
أمثلة
bash
# تمكين وضع الحجب (يتطلب root)
sd config set monitor.block_mode true
# زيادة مخزن القناة للخوادم المشغولة
sd config set monitor.channel_capacity 16384WARNING
يستخدم وضع الحجب (monitor.block_mode = true) أحداث أذونات fanotify في لينكس. يتطلب هذا:
- صلاحيات root
- نواة لينكس مع تمكين
CONFIG_FANOTIFY_ACCESS_PERMISSIONS - تشغيل وحيد خدمة PRX-SD بصفة root
على ماك أو إس وويندوز، لا يتوفر وضع الحجب ويُتجاهل هذا الإعداد.
إعدادات التحديث
| المفتاح | النوع | الافتراضي | الوصف |
|---|---|---|---|
update_server_url | string | null | URL خادم تحديث التوقيعات. يجلب المحرك <url>/manifest.json للتحقق من وجود تحديثات. تجاوز هذا لاستخدام مرآة خاصة أو خادم تحديث معزول عن الهواء. |
أمثلة
bash
# استخدام مرآة خاصة
sd config set update_server_url "https://internal-mirror.example.com/prx-sd/v1"
# إعادة التعيين إلى الخادم الرسمي
sd config set update_server_url nullإعدادات العزل (quarantine.*)
الإعدادات التي تتحكم في قبو العزل المشفر.
| المفتاح | النوع | الافتراضي | الوصف |
|---|---|---|---|
quarantine.auto_quarantine | boolean | false | عند true، نقل الملفات المكتشفة بوصفها خطيرة تلقائياً إلى قبو العزل أثناء الفحص. عند false، تُبلَّغ التهديدات لكن الملفات تبقى في مكانها. |
quarantine.max_vault_size_mb | integer | 1024 (1 GiB) | الحجم الإجمالي الأقصى لقبو العزل بالـ MiB. عند الوصول إلى هذا الحد، لا يمكن عزل ملفات جديدة حتى حذف إدخالات قديمة. |
أمثلة
bash
# تمكين العزل التلقائي
sd config set quarantine.auto_quarantine true
# زيادة حجم القبو إلى 5 GiB
sd config set quarantine.max_vault_size_mb 5120
# تعطيل العزل التلقائي (التبليغ فقط)
sd config set quarantine.auto_quarantine falseالإعدادات الافتراضية الكاملة
للمرجعية، إليك الإعداد الافتراضي الكامل:
json
{
"scan": {
"max_file_size": 104857600,
"threads": null,
"timeout_per_file_ms": 30000,
"scan_archives": true,
"max_archive_depth": 3,
"heuristic_threshold": 60,
"exclude_paths": []
},
"monitor": {
"block_mode": false,
"channel_capacity": 4096
},
"update_server_url": null,
"quarantine": {
"auto_quarantine": false,
"max_vault_size_mb": 1024
}
}قواعد تحليل القيمة
عند استخدام sd config set، تُحلَّل القيم تلقائياً بهذا الترتيب:
- منطقي --
trueأوfalse - فارغ --
null - عدد صحيح -- مثل
42،104857600 - عائم -- مثل
3.14 - مصفوفة/كائن JSON -- مثل
'["/proc", "*.log"]'،'{"key": "value"}' - نص -- أي شيء آخر، مثل
"https://example.com"
TIP
عند تعيين مصفوفات أو كائنات، غلّف القيمة بعلامات اقتباس مفردة لمنع توسيع الـ shell:
bash
sd config set scan.exclude_paths '["*.log", "/proc", "/sys"]'الأوامر ذات الصلة
| الأمر | الوصف |
|---|---|
sd config show | عرض الإعدادات الحالية |
sd config set <key> <value> | تعيين قيمة إعداد |
sd config reset | إعادة تعيين جميع الإعدادات إلى الافتراضيات |
sd policy show | عرض سياسة المعالجة |
sd policy set <key> <value> | تعيين قيمة سياسة المعالجة |
sd policy reset | إعادة تعيين سياسة المعالجة إلى الافتراضيات |
الخطوات التالية
- العودة إلى نظرة عامة على الإعدادات للمقدمة العامة
- تعلّم كيف تؤثر إعدادات
scan.*على فحص الملفات - تهيئة المراقبة في الوقت الفعلي بإعدادات
monitor.* - إعداد العزل مع العزل التلقائي