تشغيل صورة Docker المبنية على Envoy لـ Wallarm¶
تصف هذه التعليمات الخطوات لتشغيل صورة Docker الخاصة بـ Wallarm والمبنية على Envoy 1.18.4. تحتوي الصورة على كل الأنظمة المطلوبة لتشغيل عقدة Wallarm بشكل صحيح:
-
خدمات الوكيل Envoy مع وحدة Wallarm المدمجة
-
وحدات Tarantool للتحليلات بعد الحدث
-
خدمات وسكربتات أخرى
تم تصميم وحدة Wallarm كفلتر HTTP لـ Envoy لتوكيل الطلبات.
المعلمات التكوينية المدعومة
يرجى العلم بأن معظم المديريات الخاصة بتكوين عقدة التصفية المبنية على NGINX غير مدعومة لتكوين عقدة التصفية المبنية على Envoy. ونتيجة لذلك، تحديد المعدل وكشف استخدام الاعتمادات المكررة غير متاحين في هذه الطريقة للتوزيع.
اطلع على قائمة المعلمات المتاحة لـ تكوين عقدة التصفية المبنية على Envoy →
حالات الاستخدام¶
Among all supported Wallarm deployment options, Envoy-based Docker image is recommended for Wallarm deployment in these use cases:
-
If your organization utilizes Docker-based infrastructure, Wallarm Docker image is the ideal choice. It integrates effortlessly into your existing setup, whether you are employing a microservice architecture running on AWS ECS, Alibaba ECS, or other similar services. This solution also applies to those using virtual machines seeking a more streamlined management through Docker containers.
-
If you require fine-grained control over each container, the Docker image excels. It affords a greater level of resource isolation than typically possible with traditional VM-based deployments.
المتطلبات¶
-
Docker installed on your host system
-
Access to
https://hub.docker.com/r/wallarm/envoy
to download the Docker image. Please ensure the access is not blocked by a firewall -
Access to the account with the Administrator role in Wallarm Console in the US Cloud or EU Cloud
-
Access to
https://us1.api.wallarm.com
if working with US Wallarm Cloud or tohttps://api.wallarm.com
if working with EU Wallarm Cloud. Please ensure the access is not blocked by a firewall -
Access to the IP addresses below for downloading updates to attack detection rules, as well as retrieving precise IPs for your allowlisted, denylisted, or graylisted countries, regions, or data centers
الخيارات لتشغيل الحاوية¶
يمكن تمرير معلمات تكوين عقدة التصفية إلى أمر docker run
بالطرق التالية:
-
في متغيرات البيئة. هذا الخيار يسمح بتكوين معلمات عقدة التصفية الأساسية فقط، فلا يمكن تغيير أغلب المعلمات عبر متغيرات البيئة.
-
في ملف التكوين المركب. هذا الخيار يسمح بتكوين كل المعلمات لعقدة التصفية.
تشغيل الحاوية مع تمرير متغيرات البيئة¶
لتشغيل الحاوية:
-
Get Wallarm token of the appropriate type:
-
قم بتشغيل الحاوية مع العقدة:
يمكنك تمرير الإعدادات الأساسية التالية لعقدة التصفية إلى الحاوية عبر الخيار -e
:
متغير البيئة | الوصف | مطلوب |
---|---|---|
WALLARM_API_TOKEN | رمز عقدة أو API الخاص بـ Wallarm. | نعم |
ENVOY_BACKEND | نطاق أو عنوان IP للمورد المراد حمايته بواسطة حل Wallarm. | نعم |
WALLARM_API_HOST | خادم API Wallarm:
api.wallarm.com . | لا |
WALLARM_MODE | وضع العقدة:
monitoring .وصف مفصل لأوضاع التصفية → | لا |
WALLARM_LABELS | متاح بدءًا من العقدة 4.6. يعمل فقط إذا تم ضبط
...سيضع نموذج العقدة في مجموعة النماذج | نعم (لرموز API) |
TARANTOOL_MEMORY_GB | كمية الذاكرة المخصصة لـ Tarantool. يمكن أن تكون القيمة عددًا صحيحًا أو عائمًا (النقطة . هي فاصلة عشرية). بشكل افتراضي: 0.2 غيغابايت. | لا |
الأمر يقوم بما يلي:
-
ينشئ ملف
envoy.yaml
بتكوين Envoy الأدنى في دليل/etc/envoy
الخاص بالحاوية. -
ينشئ ملفات بأوراق اعتماد عقدة التصفية للوصول إلى سحابة Wallarm في دليل
/etc/wallarm
الخاص بالحاوية:node.yaml
بـ UUID العقدة ومفتاح السر.private.key
بمفتاح Wallarm الخاص.
-
يحمي المورد
http://ENVOY_BACKEND:80
.
تشغيل الحاوية بتركيب envoy.yaml¶
يمكنك تركيب ملف envoy.yaml
الجاهز إلى حاوية Docker عبر الخيار -v
. يجب أن يحتوي الملف على الإعدادات التالية:
-
إعدادات عقدة التصفية كما هو موضح في التعليمات
-
إعدادات Envoy كما هو موضح في تعليمات Envoy
لتشغيل الحاوية:
-
Get Wallarm token of the appropriate type:
-
قم بتشغيل الحاوية مع العقدة:
- الخيار
-e
يمرر المتغيرات البيئية المطلوبة التالية إلى الحاوية:
متغير البيئة الوصف مطلوب WALLARM_API_TOKEN
رمز عقدة Wallarm. استخدام رمز واحد لعدة تثبيتات
يمكنك استخدام رمز واحد في عدة تثبيتات بغض النظر عن النظام الأساسي المختار platform. يسمح ذلك بتجميع منطقي لنماذج العقد في واجهة استخدام Wallarm. مثال: تقوم بنشر عدة عقد Wallarm في بيئة تطوير، كل عقدة على جهاز خاص بمطور معين.
نعم WALLARM_API_HOST
خادم API Wallarm: us1.api.wallarm.com
للسحابة الأمريكيةapi.wallarm.com
للسحابة الأوروبية
api.wallarm.com
.لا - الخيار
-v
يركب دليل الملف التكوينيenvoy.yaml
إلى دليل/etc/envoy
الخاص بالحاوية.
- الخيار
الأمر يقوم بما يلي:
-
يركب ملف
envoy.yaml
إلى دليل/etc/envoy
الخاص بالحاوية. -
ينشئ ملفات بأوراق اعتماد عقدة التصفية للولوج إلى سحابة Wallarm في دليل
/etc/wallarm
الخاص بالحاوية:node.yaml
بـ UUID العقدة ومفتاح السر.private.key
بمفتاح Wallarm الخاص.
-
يحمي المورد المحدد في ملف التكوين المركب.
تكوين الدوران الخاص بملفات السجل (اختياري)¶
تم تكوين دوران ملف السجل مسبقًا وهو ممكّن بشكل افتراضي. يمكنك تعديل إعدادات الدوران إذا لزم الأمر. تقع هذه الإعدادات في دليل /etc/logrotate.d
الخاص بالحاوية.
اختبار تشغيل عقدة Wallarm¶
-
Send the request with test Path Traversal attack to a protected resource address:
If traffic is configured to be proxied to
example.com
, include the-H "Host: example.com"
header in the request. -
Open Wallarm Console → Attacks section in the US Cloud or EU Cloud and make sure the attack is displayed in the list.
-
Optionally, test other aspects of the node functioning.