0Pricing
Linux Server Deployment & SSH Mastery · درس

قواعد جدار الحماية المتقدمة (IPTables)

أتقنوا استخدام IPTables لإنشاء قواعد جدار حماية معقدة وحساسة لحالة الاتصالات، وتطبيق ترجمة عناوين الشبكة (NAT)، وحماية خادمكم من الهجمات المتقدمة.

قواعد جدار الحماية المتقدمة (IPTables) درس مجاني في Linux Server Deployment & SSH Mastery على CoddyKit. هذا هو الدرس 2 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Linux Server Deployment & SSH Mastery، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Linux Server Deployment & SSH Mastery 4 دروس في المجموع.

تعمّق في IPTables

IPTables هو جدار الحماية القوي المدمج في Linux. ورغم أننا تناولنا أساسياته، فإنه يوفّر ميزات متقدمة للتحكم الدقيق.

يفتح هذا الدرس المجال أمام القواعد المعقدة، والتصفية المعتمدة على الحالة، وترجمة عناوين الشبكة (NAT) لتأمين شبكة خادمك وإدارتها فعليًا.

تذكّر الجداول والسلاسل

ينظّم IPTables القواعد في جداول، يؤدي كل منها غرضًا محددًا. وتوجد داخل الجداول سلاسل، وهي قوائم من القواعد التي يجري تقييمها بالترتيب.

  • جدول filter: الجدول الافتراضي المستخدم لتصفية الحزم (حظرها أو السماح بها). ويحتوي على سلاسل INPUT وOUTPUT وFORWARD.
  • جدول nat: يُستخدم لترجمة عناوين الشبكة (NAT). ويحتوي على سلاسل PREROUTING وPOSTROUTING وOUTPUT.
  • توجد جداول أخرى مثل mangle وraw لتعديل الحزم لأغراض متخصصة.

كشف أسرار جدار الحماية المعتمد على الحالة

يتتبع جدار الحماية المعتمد على الحالة حالة اتصالات الشبكة. وبدلًا من فحص كل حزمة على حدة، يتذكر ما إذا كانت الحزمة تنتمي إلى اتصال قائم ومُنشأ بالفعل.

حالات الاتصال الرئيسية:

  • NEW: الحزمة الأولى لاتصال جديد.
  • ESTABLISHED: الحزم التي تنتمي إلى اتصال قائم ونشط.
  • RELATED: الحزم التي تبدأ اتصالًا جديدًا مرتبطًا باتصال قائم (مثل نقل بيانات FTP).

تطبيق القواعد المعتمدة على الحالة

تُبسّط القواعد المعتمدة على الحالة إدارة جدار الحماية بدرجة كبيرة. إذ يمكنك السماح بكل حركة المرور المنتمية إلى اتصالات قائمة، ما يعني أنك تحتاج فقط إلى تعريف قواعد الاتصالات NEW التي يجري بدؤها.

تسمح هذه القاعدة بجميع الحزم الواردة التي تشكّل جزءًا من اتصال قائم أو مرتبط:

sudo iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

إنشاء منطق قواعد معقد

يتيح لك IPTables دمج وحدات المطابقة والخيارات المختلفة لإنشاء قواعد محددة للغاية. ويساعد ذلك على ضبط الوصول بدقة لمختلف الخدمات والمصادر.

مثال: السماح بـ SSH (المنفذ 22) من شبكة فرعية محددة (192.168.1.0/24) للاتصالات الجديدة فقط.

sudo iptables -A INPUT -p tcp --dport 22 -s 192.168.1.0/24 -m state --state NEW -j ACCEPT

مقدمة إلى ترجمة عناوين الشبكة

تعدّل ترجمة عناوين الشبكة (NAT) معلومات عناوين الشبكة في ترويسة IP للحزم أثناء عبورها الشبكة. وهي مهمة من أجل:

  • السماح لأجهزة متعددة على شبكة خاصة بمشاركة عنوان IP عام واحد (مثل أجهزة التوجيه المنزلية).
  • إعادة توجيه المنافذ، أي توجيه الطلبات الخارجية إلى خوادم داخلية.

يوجد نوعان رئيسيان: ترجمة عنوان المصدر (SNAT) وترجمة عنوان الوجهة (DNAT).

SNAT للاتصالات الصادرة

تغيّر ترجمة عنوان المصدر (SNAT) عنوان IP المصدر للحزم. ويُستخدم ذلك عادةً عندما تحتاج الخوادم الداخلية إلى الوصول إلى الإنترنت عبر خادم بوابة ذي عنوان IP عام.

تُعد المقنّعة شكلًا محددًا من SNAT، حيث يُستخدم عنوان IP لواجهة الخروج تلقائيًا عنوانًا للمصدر، ويكون ذلك مفيدًا لعناوين IP الديناميكية.

مثال: السماح للشبكة الداخلية 192.168.0.0/24 بالوصول إلى الإنترنت عبر eth0.

sudo iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE

ترجمة عناوين الوجهة (DNAT) للخدمات الواردة

تعمل ترجمة عناوين الوجهة (DNAT) على تغيير عنوان IP للوجهة في الحزم. وهذا مناسب تمامًا لـإعادة توجيه المنافذ، حيث تتيح الوصول إلى خدمة تعمل على خادم داخلي عبر عنوان IP العام لخادم البوابة.

مثال: إعادة توجيه طلبات الويب الواردة (المنفذ 80) على eth0 إلى خادم ويب داخلي على العنوان 192.168.1.100.

sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to-destination 192.168.1.100:80

الحماية من هجمات القوة الغاشمة

يمكن لـIPTables المساعدة في الحماية من الهجمات الشائعة، مثل محاولات تسجيل الدخول بالقوة الغاشمة (مثل SSH)، وذلك عبر الحد من معدل قبول الاتصالات الجديدة من عنوان IP مصدر معيّن.

تتيح لك الوحدة limit تحديد معدل وحدّ للدفعة. تذكّر إسقاط الاتصالات اللاحقة بعد بلوغ الحد.

مثال: الحد من اتصالات SSH الجديدة إلى 3 اتصالات في الدقيقة، مع السماح بدفعة أولية من 3 اتصالات، ثم إسقاط الاتصالات الأخرى.

sudo iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m limit --limit 3/minute --limit-burst 3 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 22 -j DROP

منطق قواعد IPTables

لنفترض وجود خادم يعمل كبوابة. لديه واجهة عامة eth0 وواجهة داخلية eth1 (متصلة بالشبكة 192.168.1.0/24).

ما أمر IPTables الذي يسمح بالوصول إلى خادم ويب داخلي على العنوان 192.168.1.50 من الإنترنت عبر المنفذ 80؟

مراجعة إتقان IPTables

تهانينا! لقد استكشفت مفاهيم متقدمة في IPTables:

  • جدار الحماية ذي الحالة باستخدام حالات ESTABLISHED وRELATED وNEW.
  • إنشاء قواعد معقدة عبر الجمع بين معايير مطابقة متعددة.
  • تطبيق ترجمة عناوين الشبكة (NAT) لحركة المرور الصادرة (SNAT/التنكر) والواردة (DNAT/إعادة توجيه المنافذ).
  • استخدام الوحدة limit من أجل الحماية الأساسية من الهجمات.

تُعد هذه المهارات ضرورية لبناء بيئات خوادم Linux قوية وآمنة. تذكّر حفظ قواعد IPTables بعد إجراء التغييرات، إذ إنها لا تبقى محفوظة افتراضيًا!

الأسئلة الشائعة

هل درس «قواعد جدار الحماية المتقدمة (IPTables)» مجاني؟

نعم — نص درس «قواعد جدار الحماية المتقدمة (IPTables)» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Linux Server Deployment & SSH Mastery، انتقل إلى CoddyKit PRO. تتضمن دورة Linux Server Deployment & SSH Mastery 4 دروس في المجموع.

ماذا ستتعلم في «قواعد جدار الحماية المتقدمة (IPTables)»؟

أتقنوا استخدام IPTables لإنشاء قواعد جدار حماية معقدة وحساسة لحالة الاتصالات، وتطبيق ترجمة عناوين الشبكة (NAT)، وحماية خادمكم من الهجمات المتقدمة. تتمرن على Linux Server Deployment & SSH Mastery مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Linux Server Deployment & SSH Mastery؟

لا تُشترط خبرة سابقة. Linux Server Deployment & SSH Mastery على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 2 من أصل 4.

كم من الوقت يستغرق درس «قواعد جدار الحماية المتقدمة (IPTables)»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Linux Server Deployment & SSH Mastery هذا؟

نعم. كل درس في Linux Server Deployment & SSH Mastery يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. تدقيق أمان الخادم
  2. قواعد جدار الحماية المتقدمة (IPTables)
  3. اكتشاف التسلل ومنعه
  4. التسجيل المركزي والتكامل مع SIEM
← العودة إلى Linux Server Deployment & SSH Mastery