Skip to content
تم إنشاء هذه الصفحة وترجمتها بمساعدة الذكاء الاصطناعي. إذا لاحظت أي أخطاء، لا تتردد في المساهمة في تحسينها. تعديل على GitHub

مرجع الإعداد ​

توثِّق هذه الصفحة كل مفتاح إعداد في ملف إعداد PRX-WAF بصيغة TOML. ملف الإعداد الافتراضي هو configs/default.toml.

إعدادات الوكيل ([proxy]) ​

الإعدادات التي تتحكم في مُستمع الوكيل العكسي.

المفتاحالنوعالافتراضيالوصف
listen_addrstring"0.0.0.0:80"عنوان مُستمع HTTP
listen_addr_tlsstring"0.0.0.0:443"عنوان مُستمع HTTPS
worker_threadsinteger | nullnull (عدد وحدات CPU)عدد خيوط عمل الوكيل. عند null، يستخدم عدد أنوية CPU المنطقية.

إعدادات API ([api]) ​

إعدادات واجهة برمجة الإدارة وواجهة المستخدم الإدارية.

المفتاحالنوعالافتراضيالوصف
listen_addrstring"127.0.0.1:9527"عنوان مُستمع API الإدارة + واجهة المستخدم. اربط بـ 127.0.0.1 في الإنتاج لتقييد الوصول على المضيف المحلي.

إعدادات التخزين ([storage]) ​

اتصال قاعدة بيانات PostgreSQL.

المفتاحالنوعالافتراضيالوصف
database_urlstring"postgresql://prx_waf:[email protected]:5432/prx_waf"عنوان URL لاتصال PostgreSQL
max_connectionsinteger20الحد الأقصى لعدد اتصالات قاعدة البيانات في المجمع

إعدادات التخزين المؤقت ([cache]) ​

إعداد تخزين الاستجابات المؤقت باستخدام ذاكرة تخزين مؤقت moka LRU في الذاكرة.

المفتاحالنوعالافتراضيالوصف
enabledbooleantrueتفعيل تخزين الاستجابات المؤقت
max_size_mbinteger256الحجم الأقصى للتخزين المؤقت بالميغابايت
default_ttl_secsinteger60مدة الصلاحية الافتراضية للاستجابات المخزَّنة مؤقتاً (بالثواني)
max_ttl_secsinteger3600الحد الأقصى لمدة الصلاحية (بالثواني). لا يمكن تخزين الاستجابات مؤقتاً لمدة أطول من هذه بغض النظر عن رؤوس الخادم الخلفي.

إعدادات HTTP/3 ([http3]) ​

HTTP/3 عبر QUIC (مكتبة Quinn).

المفتاحالنوعالافتراضيالوصف
enabledbooleanfalseتفعيل دعم HTTP/3
listen_addrstring"0.0.0.0:443"عنوان مُستمع QUIC (UDP)
cert_pemstring--مسار شهادة TLS (تنسيق PEM)
key_pemstring--مسار مفتاح TLS الخاص (تنسيق PEM)

WARNING

يتطلب HTTP/3 شهادات TLS صالحة. يجب تعيين كلاً من cert_pem وkey_pem عند تعيين enabled = true.

إعدادات الأمن ([security]) ​

إعداد أمن API الإدارة والوكيل.

المفتاحالنوعالافتراضيالوصف
admin_ip_allowliststring[][]قائمة IPs/CIDRs المسموح لها بالوصول إلى API الإدارة. فارغة تعني السماح للجميع.
max_request_body_bytesinteger10485760 (10 ميغابايت)الحجم الأقصى لجسم الطلب بالبايت. الطلبات التي تتجاوز هذا تُرفض بـ 413.
api_rate_limit_rpsinteger0حد معدل لكل IP لـ API الإدارة (طلب في الثانية). 0 يعني مُعطَّل.
cors_originsstring[][]مصادر CORS المسموح بها لـ API الإدارة. فارغة تعني السماح لجميع المصادر.

إعدادات القواعد ([rules]) ​

إعداد محرك القواعد.

المفتاحالنوعالافتراضيالوصف
dirstring"rules/"الدليل الحاوي على ملفات القواعد
hot_reloadbooleantrueتفعيل مراقبة نظام الملفات لإعادة التحميل التلقائية للقواعد
reload_debounce_msinteger500نافذة debounce لأحداث تغيير الملفات (بالميلي ثانية)
enable_builtin_owaspbooleantrueتفعيل قواعد OWASP CRS المدمجة
enable_builtin_botbooleantrueتفعيل قواعد كشف الروبوتات المدمجة
enable_builtin_scannerbooleantrueتفعيل قواعد كشف الماسحات المدمجة

مصادر القواعد ([[rules.sources]]) ​

تهيئة مصادر قواعد متعددة (أدلة محلية أو URLs بعيدة):

المفتاحالنوعمطلوبالوصف
namestringنعماسم المصدر (مثل "custom" أو "owasp-crs")
pathstringلامسار الدليل المحلي
urlstringلاURL بعيد لجلب القواعد
formatstringنعمتنسيق القاعدة: "yaml" أو "json" أو "modsec"
update_intervalintegerلافترة التحديث التلقائي بالثواني (للمصادر البعيدة فقط)
toml
[[rules.sources]]
name   = "custom"
path   = "rules/custom/"
format = "yaml"

[[rules.sources]]
name            = "owasp-crs"
url             = "https://example.com/rules/owasp.yaml"
format          = "yaml"
update_interval = 86400

إعدادات CrowdSec ([crowdsec]) ​

تكامل استخبارات تهديدات CrowdSec.

المفتاحالنوعالافتراضيالوصف
enabledbooleanfalseتفعيل تكامل CrowdSec
modestring"bouncer"وضع التكامل: "bouncer" أو "appsec" أو "both"
lapi_urlstring"http://127.0.0.1:8080"عنوان URL لـ CrowdSec LAPI
api_keystring""مفتاح API لـ Bouncer
update_frequency_secsinteger10فترة تحديث ذاكرة التخزين المؤقت للقرارات (بالثواني)
fallback_actionstring"allow"الإجراء عند عدم إمكانية الوصول إلى LAPI: "allow" أو "block" أو "log"
appsec_endpointstring--عنوان URL لنقطة نهاية فحص AppSec HTTP (اختياري)
appsec_keystring--مفتاح API لـ AppSec (اختياري)

إعداد المضيف ([[hosts]]) ​

إدخالات المضيف الثابتة (يمكن أيضاً إدارتها عبر واجهة المستخدم الإدارية/API):

المفتاحالنوعمطلوبالوصف
hoststringنعماسم النطاق للمطابقة
portintegerنعممنفذ الاستماع (عادةً 80 أو 443)
remote_hoststringنعمIP أو اسم مضيف الخادم الخلفي الخارج
remote_portintegerنعممنفذ الخادم الخلفي الخارج
sslbooleanلااستخدام HTTPS للخادم الخلفي (الافتراضي: false)
guard_statusbooleanلاتفعيل حماية WAF لهذا المضيف (الافتراضي: true)

إعدادات الكتلة ([cluster]) ​

إعداد الكتلة متعددة العقد. راجع وضع الكتلة للتفاصيل.

المفتاحالنوعالافتراضيالوصف
enabledbooleanfalseتفعيل وضع الكتلة
node_idstring"" (تلقائي)معرِّف عقدة فريد. يُنشَأ تلقائياً إذا كان فارغاً.
rolestring"auto"دور العقدة: "auto" أو "main" أو "worker"
listen_addrstring"0.0.0.0:16851"عنوان استماع QUIC للاتصال بين العقد
seedsstring[][]عناوين العقد الأولية للانضمام إلى الكتلة

تشفير الكتلة ([cluster.crypto]) ​

المفتاحالنوعالافتراضيالوصف
ca_certstring--مسار شهادة CA (PEM)
ca_keystring--مسار المفتاح الخاص لـ CA (العقدة الرئيسية فقط)
node_certstring--مسار شهادة العقدة (PEM)
node_keystring--مسار المفتاح الخاص للعقدة (PEM)
auto_generatebooleantrueإنشاء الشهادات تلقائياً عند أول تشغيل
ca_validity_daysinteger3650صلاحية شهادة CA (بالأيام)
node_validity_daysinteger365صلاحية شهادة العقدة (بالأيام)
renewal_before_daysinteger7تجديد تلقائي بهذا العدد من الأيام قبل انتهاء الصلاحية

مزامنة الكتلة ([cluster.sync]) ​

المفتاحالنوعالافتراضيالوصف
rules_interval_secsinteger10فترة التحقق من إصدار القاعدة
config_interval_secsinteger30فترة مزامنة الإعداد
events_batch_sizeinteger100تفريغ دفعة الأحداث عند هذا العدد
events_flush_interval_secsinteger5تفريغ الأحداث حتى لو لم تمتلئ الدفعة
stats_interval_secsinteger10فترة الإبلاغ عن الإحصاءات
events_queue_sizeinteger10000حجم قائمة انتظار الأحداث (يُسقط الأقدم عند الامتلاء)

انتخاب الكتلة ([cluster.election]) ​

المفتاحالنوعالافتراضيالوصف
timeout_min_msinteger150الحد الأدنى لمهلة الانتخاب (بالميلي ثانية)
timeout_max_msinteger300الحد الأقصى لمهلة الانتخاب (بالميلي ثانية)
heartbeat_interval_msinteger50فترة نبضة القلب من العقدة الرئيسية إلى العمال (بالميلي ثانية)
phi_suspectfloat8.0عتبة الشك لكاشف فشل phi accrual
phi_deadfloat12.0عتبة الموت لكاشف فشل phi accrual

صحة الكتلة ([cluster.health]) ​

المفتاحالنوعالافتراضيالوصف
check_interval_secsinteger5تكرار فحص الصحة
max_missed_heartbeatsinteger3وسم النظير بأنه غير صحي بعد N من الإغفالات

الإعداد الافتراضي الكامل ​

للمرجع، راجع ملف default.toml في المستودع.

الخطوات التالية ​

Released under the Apache-2.0 License.