يوفر جدار الحماية جدار حماية مُدار ديناميكيًا مع دعم لمناطق الشبكة أو جدار الحماية لتحديد مستوى الثقة لاتصالات الشبكة أو الواجهات. إنه يدعم إعدادات جدار الحماية IPv4 وIPv6 وجسور إيثرنت وفصل وقت التشغيل وخيارات التكوين الدائمة. كما يوفر أيضًا واجهة للخدمات أو التطبيقات لإضافة جداول ip* وقواعد ebtables مباشرة.
للتحقق من مستودع المصدر، يمكنك استخدام:
استنساخ بوابة https://github.com/firewalld/firewalld.git
سيؤدي هذا إلى إنشاء نسخة محلية من المستودع.
يمكن العثور على قواعد سلوك المساهم في CODE_OF_CONDUCT.md
يستخدم جدار الحماية GNU gettext لدعم الترجمة. يمكن إجراء الترجمات باستخدام مثيل Weblate الخاص بـ Fedora. يتم دمج الترجمات بشكل دوري في مستودع جدار الحماية الرئيسي.
هذه هي تبعيات وقت التشغيل:
linux >= 5.3 python >= 3.8 python3-dbus python3-gobject python3-nftables >= 0.9.4
ملاحظة : python2 غير مدعوم.
قد تعمل هذه التبعيات على تحسين وظائف جدار الحماية، ولكنها ليست مطلوبة.
ebtables ipset iptables polkit python3-capng (libcap-ng-python3)
بالإضافة إلى تبعيات وقت التشغيل، هناك حاجة إلى بعض التبعيات الأخرى للبناء من المصدر:
desktop-file-utils: /usr/bin/desktop-file-install gettext intltool glib2: /usr/bin/glib-compile-schemas glib2-devel: /usr/share/aclocal/gsettings.m4 systemd-units pytest
لتتمكن من إنشاء صفحات الدليل والوثائق من ملفات docbook:
docbook-style-xsl libxslt
استخدم تعويذة autoconf/automake المعتادة لإنشاء ملفات تعريفية
./autogen.sh ./تكوين
يمكنك استخدام مترجم بايثون محدد عن طريق تمرير متغير PYTHON. يتم استخدام هذا أيضًا بواسطة testsuite.
./تكوين PYTHON=/path/to/python3
يستخدم
يصنع
لإنشاء الوثائق وتحديث ملفات po.
يستخدم
جعل الاختيار
لتشغيل testsuite. يتم إجراء الاختبارات داخل مساحات أسماء الشبكة ولا تتداخل مع جدار الحماية قيد التشغيل الخاص بالمضيف. ويمكن أيضًا تشغيلها بالتوازي عن طريق تمرير العلامات للاختبار التلقائي.
تأكد من TESTSUITEFLAGS = "-j4"
يستخدم testsuite أيضًا الكلمات الرئيسية للسماح بتشغيل مجموعة فرعية من الاختبارات التي تمارس منطقة معينة. على سبيل المثال:
قم بالتحقق من TESTSUITEFLAGS = "-k rich -j4"
الإخراج:
24: قواعد التدقيق الغنية موافق 25: القواعد الغنية ذات الأولوية موافق 26: قواعد الغني سيئة طيب 53 : قواعد التدقيق الغنية موافق 23:قواعد غنية جيدة طيب 55: قواعد الغني سيئة طيب 74: قم بإزالة المنفذ الأمامي بعد إعادة التحميل بشكل جيد
يمكنك الحصول على قائمة الاختبارات والكلمات الرئيسية
جعل -C src/الاختبارات تحقق من TESTSUITEFLAGS = "-l"
أو الكلمات الرئيسية فقط
make -C src/tests check TESTSUITEFLAGS="-l" |awk '/^[[:space:]]*[[:digit:]]+/{getline; print $0}' |tr ' ' 'n' |sort |uniq
هناك اختبارات التكامل. يتضمن هذا حاليًا مدير الشبكة. قد تكون هذه مدمرة للمضيف. قم بتشغيلها في جهاز افتراضي أو حاوية يمكن التخلص منها.
جعل التحقق من التكامل
يوجد أيضًا هدف حاوية الفحص الذي سيقوم بتشغيل مجموعة الاختبار داخل حاويات podman/docker المختلفة. وهذا مفيد لتغطية توزيعات متعددة. كما أنه يقوم بإجراء اختبارات قد تكون مدمرة للمضيف مثل اختبارات التكامل.
إنشاء حاوية فحص TESTSUITEFLAGS="-j4"
كجزء من هدف إنشاء dist
، يتم إنشاء صورة حاوية OCI. يتم توزيع هذا جنبًا إلى جنب مع الإصدار العادي من كرة القطران. يمكن استخدامه لتشغيل جدار الحماية من الحاوية. لن يتكامل جدار الحماية الموجود في حاوية مع المضيف (على سبيل المثال، podman، وlibvirt، وNetworkManager).
لتحميل صورة الحاوية يدويًا في بيئتك:
تحميل podman -i .../path/to/firewalld-oci-<ver>.tar
لجلب الصورة من quay.io:
podman سحب quay.io/firewalld/firewalld:<ver>
حيث يكون <ver>
اختياريًا، فسيتم استخدام الإصدار الأحدث إذا تم حذفه.
لبدء البرنامج الخفي/الحاوية:
تشغيل بودمان -d - مضيف الشبكة - المميز --اسم جدار الحماية الخاص بي جدار الحماية
سيكون تكوين جدار الحماية موجودًا داخل الحاوية. لذلك قد يرغب المستخدمون أحيانًا في podman commit
بالصورة.
يجب أن يتم استخدام واجهة سطر الأوامر الخاصة بجدار الحماية عبر podman exec بعد بدء تشغيل البرنامج الخفي/الحاوية:
podman exec جدار الحماية الخاص بي جدار الحماية cmd ...
يمكن استخدام نفس صورة الحاوية للتكامل مع NetworkManager وpodman وlibvirt وما إلى ذلك. وهذا يتطلب أن يكون لدى المضيف سياسة dbus لجدار الحماية.
يمكن الحصول على سياسة dbus من شجرة التعليمات البرمجية المصدر لجدار الحماية في الموقع config/FirewallD.conf
.
cp config/FirewallD.conf /usr/share/dbus-1/system.d/FirewallD.conf
بمجرد وضع سياسة dbus، يمكن بدء تشغيل الحاوية على هذا النحو:
تشغيل بودمان -d -v /run/dbus/system_bus_socket:/run/dbus/system_bus_socket --مضيف الشبكة --متميز --اسم جدار الحماية الخاص بي جدار الحماية جدار الحماية --nofork --nopid
الإضافة الوحيدة هي: وحدة التخزين، CMD الصريح.
يمكن استخدام الطريقة some لتخزين ملفات تكوين جدار الحماية على المضيف.
تشغيل بودمان -d -v /run/dbus/system_bus_socket:/run/dbus/system_bus_socket -v /etc/firewalld:/etc/firewalld --مضيف الشبكة --متميز --اسم جدار الحماية الخاص بي جدار الحماية جدار الحماية --nofork --nopid
بالنسبة للتوزيعات المستندة إلى Fedora وRHEL، يوجد ملف مواصفات في مستودع المصدر باسم firewalld.spec. يجب أن يكون هذا قابلاً للاستخدام لإصدارات Fedora >= 16 وRHEL >= 7.
الصفحة الرئيسية: http://firewalld.org
الإبلاغ عن خطأ: https://github.com/firewalld/firewalld/issues
متصفح جيت الريبو: https://github.com/firewalld/firewalld
بوابة الريبو: https://github.com/firewalld/firewalld.git
الوثائق: http://firewalld.org/documentation/
للاستخدام: https://lists.fedorahosted.org/archives/list/[email protected]/
للتطوير: https://lists.fedorahosted.org/archives/list/[email protected]/
دليل | محتوى |
---|---|
التكوين / | ملفات التكوين |
التكوين/icmptypes/ | أنواع ICMP المحددة مسبقًا |
التكوين / الخدمات / | خدمات محددة مسبقا |
التكوين/xmlschema/ | يتحقق مخطط XML من ملفات التكوين |
التكوين / المناطق / | مناطق محددة مسبقًا |
التكوين / إيبسيتس / | إيبسيتس محددة مسبقا |
وثيقة / | التوثيق |
وثيقة / رجل / | الدليل الأساسي لصفحات الرجل |
وثيقة / رجل / رجل 1 / | رجل (1) صفحة |
وثيقة/رجل/رجل5/ | الرجل (5) صفحات |
بو / | ترجمات |
إكمال الصدفة/ | الدليل الأساسي للبرامج النصية للإكمال التلقائي |
سرك/ | شجرة المصدر |
سرك/جدار الحماية/ | شجرة الاستيراد للخدمة وجميع التطبيقات |
سرك / الرموز / | أيقونات بأحجام: 16، 22، 24، 32، 48 وقابلة للتطوير |
سرك/الاختبارات/ | تيستسويت |