إعـــــــلان

تقليص
لا يوجد إعلان حتى الآن.

محتاج خبراء في iptables

تقليص
X
  • تصفية - فلترة
  • الوقت
  • عرض
إلغاء تحديد الكل
مشاركات جديدة

  • [سؤال] محتاج خبراء في iptables

    السلام عليكم

    أخواني انا عندي استفسار في iptables كذلك لدي معلومات متوسطة عن iptables

    لدي قوانين iptables على السيرفر محتاج الخبراء يعطون رائيهم من ناحية الحماية

    انا استخدم السيرفر بدون لوحة تحكم ولدي قواعد خاصة لــ iptables

    طبعا البورتات المفتوحة في السيرفر "80,22,25,53,3306"


    قواعد هذي خاصة لفتح البورتات الاساسية

    كود PHP:
    iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT 
    iptables 
    -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 22 -j ACCEPT 
    iptables 
    -A INPUT -m state --state NEW -p tcp --dport 25 -j ACCEPT 
    iptables 
    -A INPUT -m state --state NEW -p udp --dport 53 -j ACCEPT 
    iptables 
    -A INPUT -m state --state NEW -p tcp --dport 53 -j ACCEPT 
    iptables 
    -A INPUT -m state --state NEW -p tcp --dport 80 -j ACCEPT 
    iptables 
    -I INPUT -p tcp --dport 3306 -j ACCEPT 

    القواعد هذي خاصة الحماية

    كود PHP:
    iptables -A INPUT -p tcp --tcp-flags ALL FIN -j DROP 
    iptables 
    -A INPUT -p tcp --tcp-flags ALL ALL -j DROP 
    iptables 
    -A INPUT -p tcp --tcp-flags ALL FIN,PSH,URG -j DROP  
    iptables 
    -A INPUT -p tcp --tcp-flags ALL NONE -j DROP 
    iptables 
    -A INPUT -p tcp --tcp-flags ALL NONE -m limit --limit 3/--limit-burst 5 -j LOG --log-prefix "Firewall> Null scan " 
    iptables -A INPUT -p tcp --tcp-flags ALL NONE  -m recent --name blacklist_60 --set -m comment --comment "Drop/Blacklist Null scan" -j DROP 
    iptables 
    -A INPUT -p tcp --tcp-flags ALL FIN,PSH,URG -m limit --limit 3/--limit-burst 5 -j LOG --log-prefix "Firewall> XMAS scan " 
    iptables -A INPUT -p tcp --tcp-flags ALL SYN,RST,ACK,FIN,URG -m limit --limit 3/--limit-burst 5 -j LOG --log-prefix "Firewall> XMAS-PSH scan " 
    iptables -A INPUT -p tcp --tcp-flags ALL ALL -m limit --limit 3/--limit-burst 5 -j LOG --log-prefix "Firewall> XMAS-ALL scan " 
    iptables -A INPUT -p tcp --tcp-flags ALL SYN,RST,ACK,FIN,URG -m recent --name blacklist_60 --set  -m comment --comment "Drop/Blacklist Xmas/PSH scan" -j DROP  
    iptables 
    -A INPUT -p tcp --tcp-flags ALL FIN,PSH,URG -m recent --name blacklist_60 --set  -m comment --comment "Drop/Blacklist Xmas scan" -j DROP  
    iptables 
    -A INPUT -p tcp --tcp-flags ALL ALL -m recent --name blacklist_60 --set  -m comment --comment "Drop/Blacklist Xmas/All scan" -j DROP 
    iptables 
    -A INPUT -p tcp --tcp-flags ALL FIN -m limit --limit 3/--limit-burst 5 -j LOG --log-prefix "Firewall> FIN scan " 
    iptables -A INPUT -p tcp --tcp-flags ALL FIN -m recent --name blacklist_60 --set  -m comment --comment "Drop/Blacklist FIN scan" -j DROP 
    iptables 
    -A INPUT -p udp  -m limit --limit 6/--limit-burst 1 -m length --length 0:28 -j LOG --log-prefix "Firewall>0 length udp " 
    iptables -A INPUT -p udp -m length --length 0:28 -m comment --comment "Drop UDP packet with no content" -j DROP 


    هل في نصائح وقواعد كذلك قوية .

  • #2
    وين الأخوان

    تعليق


    • #3
      عزيزي
      يجب أن تعرف أولا
      - أن القواعد تنفذ من الأعلى إلى الأسفل
      - القواعد الجديدة تضاف إلى أخر القائمة

      ثانيا:
      - يجب أن تعرف ماذا تريد أن تفعل ,, تسمح للكل ما عدا شئ معين , أم تمنع الكل ما عدا شيئ معين

      القاعدة التالية تقول
      كود PHP:
        iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT 
      سمح لأي أحد ين ينشئ معي اتصال جديد على المنفذ 22 من البرتوكول tcp

      إذن ما فائدة السطر التالي ؟
      كود PHP:
       iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 22 -j ACCEPT 
      هذه القاعدة تقول اسمح لأي أحد ين من الشبكة 192.168.1.0/24 أن ينشئ معي اتصال جديد على المنفذ 22 من البرتوكول tcp

      في واقع الأمر هذه القاعدة قد تم تنفيذ طلبها في اللتي قبلها , فلا فائدة منها كما أنني لا أعرف لماذا تضع -m state --state NEW ؟ تستطيع أن تستغني عنه

      الملاحظة الثانية
      كود PHP:
      iptables -I INPUT -p tcp --dport 3306 -j ACCEPT 
      هذا المنفذ للـ mysql server socket فإن كانت قاعدة البيانات على الخادم نفسه و لن يقوم احد من الخارج بالاتصال بها أقصد أنها لا يوجد في إعدادات mysql هذا الخيار
      bind=$server_IP

      إذن هذه القاعدة غير أمنة
      استبدلها بهذه

      كود PHP:
      iptables -A INPUT -i lo -j ACCEPT 


      أيضا تستطيع أن تستفيد من التالي
      http://www.cyberciti.biz/tips/linux-...-examples.html
      http://www.cyberciti.biz/faq/rhel-fe...tion-tutorial/
      مـدونـتي الـتقـنـيـة

      サブリ

      مــا خِفتُ المـوتَ ولا عُـقبــاهُ ,,, فما أعظمَ شأنهُ غيرَ مولاهُ
      أهوِن بما في الموتِ من حدثٍ ,,, غـــيــرَ أن بـــهِ الله ألقــاهُ

      خارج الخدمة


      تعليق


      • #4
        مشكور اخي KING SABRI

        الملاحظة الثانية
        انا اضفت في /etc/my.cnf

        bind=$server_IP

        لو اغلقت الأمر ماراح يشتغل معي القواعد البيانات الان 3306 مهو مفتوح

        كود PHP:
        iptables -I INPUT -p tcp --dport 3306 -j ACCEPT 

        ممكن اعرف لية بدلة بالامر هذا

        كود PHP:
        iptables -A INPUT -i lo -j ACCEPT 

        تعليق


        • #5
          اود اضافة شئ مهم بخصوص قواعد iptables وهو ترتيب القواعد في الجدول الخاص بها
          مثلا
          كود:
          $ iptables -I INPUT 3 -i eth1 -p udp -j ACCEPT
          
          $ iptables -I INPUT 4 -i eth1 -p udp --dport 80 -j DROP
          هنا سيتم قبول الترافيك من القاعدة الاولى وعند الوصول للثلنية يفترض انه يتم حجبه ولكن لن يحدث ذلك لانه تم قبول الترافيك من القاعدة الاولى لذا وجب مرعاة الترتيب عند اضافة قواعد iptables
          هذا المقال يشرح ذلك بالتفصيل https://likegeeks.com/linux-iptables-firewall-examples/

          تعليق

          يعمل...
          X