مقدمة
Iptables هي أداة لينكس قوية تسمح لمسؤولي النظام بتكوين جدار الحماية المدمج في النواة. تستخدم Iptables مجموعة من القواعد لتحديد كيفية تصفية حركة مرور الشبكة. تحدد كل قاعدة نوع حركة المرور التي يجب تصفيتها والإجراء الذي يجب اتخاذه بشأن مطابقة حركة المرور.
في هذا الدليل، سنناقش بعض قواعد وأوامر iptables الأساسية للمساعدة في تأمين الخادم الخاص بك. بشكل افتراضي، تمنع iptable جميع حركة المرور الواردة وتسمح بجميع حركة المرور الصادرة. هذا ليس آمنًا للغاية، لذلك سنحتاج إلى إضافة بعض القواعد لجعل خادمنا أكثر أمانًا.
البنية الأساسية
قبل أن نبدأ، دعونا نراجع التركيب الأساسي للأقراص. وفيما يلي التركيب العام للجداول:
$ iptables -A <chain> -p <protocol> -s <source> -d <destination> -j <action>
Where:
<chain>
هو اسم السلسلة (المبين أدناه)<protocol>
هو بروتوكول حركة المرور (عادة TCP أو UDP أو ICMP)<source>
هو عنوان IP المصدر<destination>
هو عنوان IP المقصد<action>
هو الإجراء الذي يجب اتخاذه (عادة ما يقبل أو يسقط)
سلاسل
تُستخدم السلاسل لتجميع قواعد iptables ذات الصلة معًا. هناك ثلاث سلاسل مدمجة:
INPUT
: لحركة المرور القادمةOUTPUT
: لحركة المرور الخارجةFORWARD
: في حالة حركة المرور من شبكة إلى أخرى.
أو يمكنك أيضًا إنشاء سلاسل مخصصة خاصة بنا.
Actions
هناك إجراءان رئيسيان يمكننا اتخاذهما باستخدام iptables: ACCEPT و DROP.
- ACCEPT:يسمح بحركة المرور من خلال
- DROP: يمنع حركة المرور
الأوامر الأساسية
قواعد الإدراج
iptables -L
يُستخدم الأمر لإدراج جميع القواعد في سلسلة.
$ iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
-v
لإدراج القواعد ذات المخرجات المطوية.
$ iptables -L -v
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
إضافة القواعد
iptables -A
يُستخدم الأمر لإضافة قاعدة في نهاية السلسلة.
$ iptables -A INPUT -s 192.168.1.0/24 -j ACCEPT
-I
لإضافة قاعدة في الموضع المحدد في السلسلة.
$ iptables -I INPUT 2 -s 192.168.1.0/24 -j ACCEPT
-p
خيار لتحديد البروتوكول --dport
لتحديد ميناء المقصد.
$ iptables -A INPUT -p tcp --dport 22 -j ACCEPT
حذف القواعد
iptables -D
يستخدم لحذف قاعدة في الموضع المحدد في سلسلة.
$ iptables -D INPUT 2
-F
: لحذف جميع القواعد في سلسلة.
$ iptables -F INPUT
-X
: The option is used for deleting a user defined chain.
$ iptables -X mychain
-P
يستخدم هذا الخيار لتحديد السياسة الافتراضية لسلسلة.
$ iptables -P INPUT DROP
المحافظة قواعد
iptables-save
يُستخدم الأمر لحفظ قواعد المواد القابلة للإنتقال الحالية.
$ iptables-save > /etc/iptables.rules
iptables-restore
لاستعادة قواعد المواد القابلة للحفظ.
$ iptables-restore < /etc/iptables.rules
خلاصة
في هذا الدليل، تعلمت كيفية سرد قواعد iptables وحذفها وحفظها واستعادتها.