اخبار ALFAعالم التقنية والتميز
قائمة الموقع

نصيحة هامة

تصنيفات

تسجيل الدخول

أهلاً بك, ضيف · RSS 2024-11-23, 1:29 PM

الرئيسية » 2010 » سبتمبر » 13 » ربط الجدار الناري iptables مع DynamicDNS
1:22 PM
ربط الجدار الناري iptables مع DynamicDNS

computernetwork

في أحد الخوادم بحصر الدخول على خدمة SSH لبعض الآيبيات IP Address المحددة مسبقاً في الخادم لزيادة الأمان، بتعطيل محاولات كسر كلمات المرور الخاصة بأحد حساباتنا، وأيضاً منع الدخول للخادم حتى وإن تمت سرقة كلمة المرور الخاصة بأحد منا.

تحديد آيبيات معينة سهل في حال كونك شركة أو قطاع لديه إتصال إنترنت يستخدم عدد من الآيبيات العامة Static Public IPs ثابتة وليست متغيرة، بعكس الأفراد مستخدمي إتصالات الإنترنت المنزلية مثل الدي إس إل DSL أو المتنقلة مثل البرودباند، حيث تتغير الأيبيات كل فترة  Dynamic-Public IP، أو مع كل إتصال جديد!.

جاءت في بالنا فكرة، وهي إنشاء عناوين نطاقات ديناميكية  Dynamic DNS تُربط مع الأجهزة الخاصة بنا، حيث تُحدث هذة النطاقات بعناوين الآيبيات الخاصة بنا بشكل دوري، ومن ثم نقوم بربط هذة النطاقات الديناميكية مع الجدار الناري iptables لفلترة الدخول على خدمة الـ SSH فقط لهذة النطاقات.

الحمدلله، الفكرة كانت ناجحة وأكثر من فعالة، والآن تتم العملية بالشكل التالي:-

  1. يتم تركيب برنامج محدث النطاقات الديناميكية في جهاز الأدمن.
  2. يقوم البرنامج بأخذ الآي بي العام الخاص بي وربطه بالنطاق الديناميكي.
  3. يقوم الجدار الناري iptables بأخذ الآي بي من النطاق الديناميكي وإضافته إلى جدول الفلترة لدخول لخدمة SSH.
  4. في حالة وجود الآي بي مسبقاً في جدول الفلترة، لايتم إضافته أو تعديله، ويبقى كما هو.
  5. في حالة تغير الآي بي، يتم حذف الآي بي القديم وإضافة الجديد.
  6. تتم هذة العملية دورياً كل دقيقة واحدة.

قمت بكتابة Shell Script يقوم بهذة العملية، يمكنك تحميله من هنا، وتابع للأسفل لمعرفة كيف يتم تركيب وإستخدام السكريبت:-

  • فك الضغط عن السكريبت تحت نفس المجلد

tar xzvf iptables_dyndnsv0.1.tgz -C /usr/local/share/

  • ستجد مجموعة من الملفات، كالتالي:
    • iptables_dyndns.sh ملف السكريبت
    • iptables_ips_dyn.txt ملف نصي فارغ، سوف يحتوي على أسماء النطاقات الديناميكية كل نطاق بسطر
    • iptables_ips_static.txt ملف نصي فارغ، سوف يحتوي على عناوين آيبيات ثابتة، في حال أردت إضافة آيبيات معينة بدلاً من أسماء نطاقات
    • iptables_listofips.txt ملف نصي فارغ، لن نقوم بالتعامل معه، سوف يحتوي على الآيبيات الخاصة بالنطاقات الديناميكية أو الآيبيات الثابتة
  • عدل على محتويات الملف النصي iptables_ips_dyn.txt، وقم بإضافة النطاقات الديناميكية الخاصة بالكل، كل نطاق بسطر جديد.
  • في حالة رغبتك بإضافة آيبيات عامة ثابتة، قم بتعديل الملف iptables_ips_static.txt وأكتب الآي بي أو الشبكات التي تريد لها السماح بالدخول لخادمك، كل آي بي أو شبكة بسطر جديد.
  • الآن أضف الشرط أو القاعدة Rule التالية في الجدار الناري، والهدف من هذه الشروط إخبار الجدار الناري أنه في حالة وصول طلب دخول على خدمة SSH، قم بالقفز إلى مجموعة من القواعد تمت تسميتها SSH.

iptables -N SSH iptables -A INPUT -p tcp --dport ssh -j SSH

إنتهينا!.

الآن تبقي خطوتان:-

  • التأكد من عمل هذة القواعد بشكل دوري كل دقيقة، كالتالي من خلال Cron:

crontab -e * * * * * sh /usr/local/share/iptables_dyndns/iptables_dyndns.sh > /dev/null 2>&1

  • حفظ هذة القواعد حتى يتم إسترجاعها بعد إعادة تشغيل الخادم

Fedora / CentOS / RedHat /etc/init.d/iptables save chkconfig iptables on

Ubuntu / Debian iptables-save > /etc/iptables.rules echo 'post-up iptables-restore < /etc/iptables.rules' >> /etc/network/interfaces

جميع الخطوات بالأعلى تطبق مرة واحدة فقط، وقت تركيب السكريبت، وكلما أردت أن تضيف نطاق ديناميكي جديد، فقط قم بتعديل الملف iptables_ips_dyn.txt أو الملف iptables_ips_static.txt  في حالة أردت أن تضيف آي بي ثابتة أو نطاق شبكة.

الفئة: أمن و حماية | مشاهده: 639 | أضاف: الـمـالـك-الـحـزيـن | الترتيب: 0.0/0
مجموع المقالات: 0
إضافة تعليق يستطيع فقط المستخدمون المسجلون
[ التسجيل | دخول ]
جميع الحقوق محفوظة © 2024
الموقع يتم التحكم به بواسطةuCoz