كيف يتم تكوين IPTables في Linux؟ [دليل مفصل 2021]

كيف يتم تكوين IPTables في Linux؟ [دليل مفصل 2021]

IPTables هو اسم نظام جدار الحماية الذي يعمل على Linux من خلال سطر الأوامر.يستخدم البرنامج بشكل أساسي كـأوبونتويتم توفير الأداة المساعدة الافتراضية في.غالبًا ما يستخدم المسؤولون جدران الحماية IPTables للسماح بحركة المرور أو منعها من الدخول إلى شبكاتهم.

إذا كنت مستخدمًا جديدًا لـ IPTables ، فإن أول ما عليك فعله هو تحديثه أو تثبيته باستخدام الأمر التالي:

sudo apt-get install iptables

على الرغم من أن المستخدمين الذين ليسوا على دراية بواجهة سطر الأوامر يجدون أن IPTables بها منحنى تعليمي ، فإن الأداة نفسها بسيطة للغاية وسهلة الاستخدام.هناك سلسلة من الأوامر الأساسية التي يمكن استخدامها كأساس للتحكم في حركة المرور.ومع ذلك ، يجب أن تكون حذرًا جدًا عند تغيير قواعد IPTables.قد تؤدي كتابة الأمر الخاطئ إلى منعك من استخدام IPTables تمامًا حتى تحل المشكلة في الجهاز الفعلي.

في هذه المقالة ، سنزودك بدليل أساسي لـ IPTables ونقدم لك الأساسيات.قبل أن ندخل في صلب IPTables ، عليك التأكد من أن لديك ملفقم بتشغيل أوبونتو 16.04VPAو أمع عميل SSH的 الجهاز المحلي.إذا كان لديك بالفعل هذه ، فقد حان الوقت للبدء.

دروس IPTables: السلسلة

أحد المفاهيم الأساسية التي يجب إتقانها في IPTables هو مفهوم السلاسل.السلسلة هي أساسًا قاعدة.يحتوي جدول المرشح على ثلاث سلاسل ستواجهها على IPTables ؛أدخل،إلى الأمام ويصدّر.

    • INPUT  - سلسلة الإدخال هي القاعدة التي تتحكم في حزم البيانات الواردة.يمكنك حظر أو السماح بالاتصالات الجديدة هنا.يمكنك القيام بذلك بناءً على المنفذ والبروتوكول وعنوان IP المصدر.
  • إلى الأمام  - تقوم سلسلة FORWARD بتصفية الحزم الواردة التي يتم إرسالها إلى مواقع طرفية مختلفة.ما لم تكن تقوم بالتوجيه أو تبحث بشكل خاص عن إعادة التوجيه ، فمن غير المرجح أن تستخدم هذه السلسلة.
  • OUTPUT  - تُستخدم سلسلة الإخراج لإدارة حزم البيانات الصادرة والاتصالات.من المهم ملاحظة أنه إذا قمت بإجراء اختبار ping لمضيف خارجي ، فسيتم استخدام سلسلة الإدخال لإرجاع البيانات إليك.

سلوك السلسلة الافتراضي

قد ترغب في الانتقال مباشرةً إلى تكوين قواعد محددة في البداية ، ولكن عليك الرجوع خطوة إلى الوراء لتحديد السلوك الافتراضي.لتحديد السلوك الافتراضي للسلسلة ، تحتاج إلى تشغيل الأمر التالي:

الأمر sudo iptables -L $

سيعرض هذا ما يلي:

user @ ubuntu: ~ $ sudo iptables -L -v 
إدخال السلسلة (قبول السياسة) 
سلسلة إلى الأمام (قبول السياسة) 
إخراج السلسلة (قبول السياسة) 
مستخدم @ ubuntu: ~ $

تخبرك هذه المعلومات بالضبط بالغرض من تكوين السلسلة.في المثال ، تم تكوين سلاسل الإدخال وإعادة التوجيه والمخرجات لقبول حركة المرور.هذه الإعدادات هي نقطة بداية جيدة ، لأنها لن تمنع أي اتصالات قد ترغب فيها.

سؤال ذو صلة  أوامر Linux الطرفية المفيدة [يجب أن تتذكر في عام 2021]

ومع ذلك ، إذا وجدت أن سياستك لا تقبل الاتصالات ، فيمكنك إدخال كل من الأوامر التالية لقبول جميع الاتصالات:

sudo iptables $ —Policy قبول الإدخال
sudo iptables $ - قبول الإخراج
sudo iptables $ - قبول إعادة توجيه السياسة

بمجرد قبول الإعدادات الافتراضية لجميع الاتصالات ، يمكنك التحكم في الوصول إلى IPTables عن طريق حظر عناوين IP وأرقام المنافذ.يتيح لك هذا تحديد الاتصالات التي تريد حظرها بدلاً من حظر جميع الاتصالات افتراضيًا.

إذا كنت تتعامل مع معلومات حساسة بشكل خاص ، فيمكنك تكوين الإعدادات الافتراضية لحظر جميع الاتصالات تلقائيًا.بهذه الطريقة ، يمكنك استخدام IPTables لتحديد عناوين IP الفردية التي تريد السماح بها.للقيام بذلك ، تحتاج إلى إدخال الأمر التالي:

sudo iptables $ — سياسة INPUT DROP
sudo iptables $ - سياسة الإخراج
sudo iptables $ - سياسة إسقاط إلى الأمام

من الأفضل لمعظم المستخدمين قبول جميع الاتصالات ، ولكن إذا كنت تعمل على خادم عالي الأمان ، فإن الأمر يستحق التذكر.

تكوين اتصال واحد

بعد تكوين سلوك السلسلة الافتراضي ، يمكنك تكوين اتصال واحد.هذا هو المكان الذي تقوم فيه بتكوين ما يسمى بالاستجابة الخاصة بالاتصال.يخبر هذا بشكل أساسي IPTables بكيفية التفاعل عند الاتصال بعنوان IP أو منفذ.هذه الردود هي على النحو التالي ؛استقبال،استسلم،رفض.

كما ترى في الصورة أعلاه ، حدد المستخدم قواعد سلسلة للسماح بالاتصالات أو إسقاطها أو رفضها بناءً على المتطلبات.فيما يلي وصف لما يحتويه كل رد:

  • أقبل - يسمح هذا التكوين بالاتصالات فقط.
  • إسقاط  - إسقاط يحظر الاتصال دون التفاعل مع المصدر بأي شكل من الأشكال.
  • رفض  - سيؤدي هذا إلى حظر محاولة الاتصال ، ولكنه سيرسل أيضًا رسالة خطأ.هذا عادةً لإخطار المصدر بأن محاولة الاتصال قد تم حظرها بواسطة جدار الحماية.

كيفية السماح بالاتصالات أو حظرها

بناءً على إعداداتك ، هناك العديد من الطرق المختلفة لحظر الاتصالات أو السماح بها.يستخدم المثال التالي طريقة حظر مخفية ، أي باستخدامقطرة قطع الاتصال دون أي تفاعل. إيتابلز-أ يسمح لنا بإضافة تحذيرات إضافية إلى القواعد التي تحددها إعدادات السلسلة الافتراضية.سترى أدناه كيفية استخدام هذا الأمر لحظر الاتصال:

حظر عنوان IP واحد:

$ sudo iptables -A INPUT -S 10.10.10.10 -j DROP

في المثال أعلاه ، يمكنك استبدال 10.10.10.10 بعنوان IP الذي تريد حظره.

سؤال ذو صلة  كيفية تعطيل IPv6 على Linux (دليل خطوة بخطوة لعام 2021)

حظر سلسلة من عناوين IP:

$ sudo iptables -A INPUT -s 10.10.10.10.0 / 24 -j DROP    

أو

$ sudo iptables -A INPUT -s 10.10.10.0/255.255.255/.0 -j DROP

منع منفذ واحد:

$ sudo iptables -A INPUT -p tcp --dport ssh -s 10.10.10.10 -j DROP 

يرجى ملاحظة أنه يمكن استبدال هذا الأمر بأي بروتوكول أو رقم منفذ.لاحظ أيضًا أن المقطع -p tcp من الكود يُستخدم للإشارة إلى ما إذا كان البروتوكول الذي تريد حظره هو UDP أو TCP.

إذا كان البروتوكول يستخدم UDP ، فأنت تدخل-p UDP而 不是-p تكب.يمكنك أيضًا حظر جميع الاتصالات من عناوين IP عن طريق إدخال الأمر التالي:

$ sudo iptables -A INPUT -p tcp --dport ssh -jDROP

اتصال ثنائي الاتجاه: برنامج تعليمي حول IPTables لحالة الاتصال

تتطلب معظم البروتوكولات التي تواجهها اتصالاً ثنائي الاتجاه للإرسال.هذا يعني أن الإرسال يتكون من المدخلات والمخرجات.ما يدخل في نظامك لا يقل أهمية عن ما يخرج.تسمح لك حالة الاتصال بالخلط والمطابقة بين الاتصالات ثنائية الاتجاه والتوصيلات أحادية الاتجاه.في المثال التالي ، يحظر بروتوكول SSH اتصالات SSH من عناوين IP ، لكنه يسمح بالاتصالات بعناوين IP:

$ sudo iptables -A INPUT -p tcp --dport ssh -s 10.10.10.10 -m state - State NEW، ESTABLISHED -j ACCEPT 

$ sudo iptables -A OUTPUT -p tcp —sport 22 -d 10.10.10.10.-m الدولة — الدولة تأسست -J قبول

بعد إدخال الأمر لتغيير حالة الاتصال ، تحتاج إلى حفظ التغييرات.إذا لم تقم بذلك ، فسيتم فقد التكوين الخاص بك عند إغلاق الأداة المساعدة.اعتمادًا على نظام التوزيع الذي تستخدمه ، يمكنك استخدام العديد من الأوامر المختلفة:

سؤال ذو صلة  كيفية استخدام BackInTime لإجراء نسخ احتياطي لكمبيوتر Linux

أوبونتو:

sudo / sbin / iptables-save $ $

ريد هات / CentOS -

sudo / sbin / service iptables حفظ

أو

sudo /etc/init.d/iptables $ حفظ

تذكر أن استخدام هذه الأوامر أمر مهم للغاية ، لأنه يمكن أن يقضي على متاعب الاضطرار إلى التهيئة في كل مرة يتم فيها تحميل الأداة المساعدة.

حذف القاعدة

لا تقل أهمية القدرة على حفظ القواعد عن إمكانية حذفها.إذا كنت قد ارتكبت خطأ أو أردت فقط إلغاء القواعد القديمة ، فيمكنك استخدام الخيار - D 命令.يجب استخدام هذا الأمر مع رقم القاعدة الذي أدخلته.يخبر هذا الرقم IPTables بالقاعدة التي يجب حذفها.على سبيل المثال ، إذا كنت ستدخل:

sudo iptables -D INPUT 10

ثم سيتم حذف القاعدة العاشرة التي هيأتها.

إذا كنت تريد تنظيف المنزل وحذف سلسلة من القواعد ، يمكنك استخدام-F القيادة.يمكنك القيام بذلك عن طريق إدخال ما يلي:

sudo iptables -F

سيؤدي هذا إلى مسح مجموعة القواعد بالكامل وتحديث IPTable الخاص بك.

IPTables: قواعد سلسلة التعلم!

هذا يختتم برنامجنا التعليمي IPTables.كما ترى ، IPTables هي وسيلة للحظر والسماحلينكسالإصدارأداة متعددة الوظائف على التدفق.يتضمن الاستخدام الفعال لهذه الأداة المساعدة تعيين التكوين الافتراضي بشكل فعال وبناء قواعد أخرى فوقه.سيسمح لك التكوين الافتراضي بتحديد نية حركة المرور الواسعة للسماح بحركة المرور أو رفضها ؛ستسمح لك هذه القواعد ببناء طريقتك بناءً على عنوان IP والمنفذ والبروتوكول.

لقد خدشنا للتو سطح إمكانات IPTables ، يمكنك استخدام الكثير من الأوامر المختلفة لتحديد كيفية تجربة حركة المرور على الخادم.ومع ذلك ، نوصيك بفهم الأساسيات قبل البدء في استخدام أوامر أخرى.على سبيل المثال ، قبل الالتزام بأي شيء أكثر احترافًا ، تحتاج إلى فهم قواعد السلسلة الأساسية.

بمجرد أن تعتاد على كيفية عمل IPTables ، يمكنك البدء في دمج المزيد من القواعد لتخصيص تجربتك.من خلال القيام بذلك ، ستتمكن من تحديد أنواع الاتصالات التي ستسمح بها بدقة أعلى من أي وقت مضى.

يا مرحبا 👋سعيد بلقائك.

اشترك في نشرتنا الإخبارية، أرسل بانتظامتكنولوجيا رائعةلمنشورك.

أكتب تعليق