تعظيم الأمن على جنو / لينكس

مرحبا أصدقاء من DesdeLinux‎ما وعد به دين وهنا تدوينة عنه كيفية تعظيم حماية أنظمة Linux وابقى على هذا النحو آمنة من المتسللين وكذلك حماية المعلومات الموجودة على الخوادم أو أجهزة الكمبيوتر أو أجهزة الكمبيوتر المحمولة !!!!

بداية

FAIL2BAN: هو تطبيق مكتوب بلغة Python لمنع التطفل على النظام ، والذي يعمل عن طريق معاقبة أو حظر الاتصالات البعيدة التي تحاول الوصول إلى القوة الغاشمة.

التثبيت:

Fedora و RHEL و CentOS:

yum install fail2ban

دبيان ، أوبونتو:

apt-get install fail2ban

ضبط:

cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local nano /etc/fail2ban/jail.local

في الجزء المسمى [DEFAULT] ، نقوم بإلغاء التعليق وتعديل #bantime = 3600 وتركه هكذا:

#bantime = 3600 bantime = 604800

في الجزء [sshd] نقدم تمكين = صحيح وتركه على هذا النحو:

#enabled = تمكين صحيح = صحيح

نوفر باستخدام CTRL + O ونغلق باستخدام CTRL + X

نبدأ الخدمة:

Fedora و RHEL و CentOS:

يمكّن systemctl fail2ban.service systemctl ابدأ fail2ban.service

دبيان ، أوبونتو:

بدء خدمة فشل 2ban

رفض الوصول إلى الجذر باستخدام ssh:

لحماية أجهزتنا ، سنرفض ssh من خلال مستخدم الجذر. للقيام بذلك نقوم بتحرير الملف / etc / ssh / sshd_config على النحو التالي:

cp sshd_config sshd_config.bck نانو / إلخ / ssh / sshd_config

نحن نترك التعليق ونتغير

# البروتوكول 2 البروتوكول 2

نحن نترك التعليق ونتغير

#PermitRootLogin نعم PermitRootLogin لا

نوفر باستخدام CTRL + O ونغلق باستخدام CTRL + X

نبدأ الخدمة:

Fedora و RHEL و CentOS:

يمكّن systemctl sshd.service systemctl بدء sshd.service

دبيان ، أوبونتو:

بدء خدمة sshd

رفض الوصول إلى خادم ssh باستخدام كلمة المرور والسماح لـ ssh فقط باستخدام مفاتيح RSA

إذا أردنا الاتصال بـ PC1 بـ Server1 ، فإن أول شيء يتعين علينا القيام به هو إنشاء مفتاحنا على PC1. مع مستخدمنا وبدون جذر على PC1 ، ننفذ:

ssh-keygen -t rsa -b 8192 (هذا يولد أكثر من مفتاح آمن لأن المفاتيح من 1024 إلى 2048 تستخدم عادة)

بمجرد حصولنا على كلمة المرور الخاصة بنا ، نقوم بتحميلها على Server1:

ssh-copy-id user @ server_ip

بمجرد الانتهاء من ذلك ، سنقوم بالاتصال بخادمنا 1 وتعديل ملف nano / etc / ssh / sshd_config بأذونات الجذر:

ssh user @ Server1 nano / etc / ssh / sshd_config

قمنا بتغيير السطر الذي يقول #PasswordAuthentication نعم لهذا:

#PasswordAuthentication نعم
كلمة المرور المصادقة لا

نوفر باستخدام CTRL + O ونغلق باستخدام CTRL + X

نعيد تشغيل خدمة ssh:

Fedora و RHEL و CentOS:

إعادة تشغيل systemctl sshd.service

دبيان ، أوبونتو:

إعادة تشغيل خدمة sshd

تغيير منفذ الاستماع ssh

مرة أخرى نقوم بتحرير / etc / ssh / sshd_config وفي الجزء الذي يشير إلى المنفذ نتركه كما يلي:

# Port 22 Port 2000 (أو أي رقم آخر أكبر من 2000. في أمثلةنا سنستخدم هذا.)

نوفر باستخدام CTRL + O ونغلق باستخدام CTRL + X

نعيد تشغيل خدمة ssh:

Fedora و RHEL و CentOS:

إعادة تشغيل systemctl sshd.service

دبيان ، أوبونتو:

إعادة تشغيل خدمة sshd

إذا استخدموا fail2ban ، فمن الضروري تغيير التكوين فيما يتعلق بضبط المنفذ sshd.

nano /etc/fail2ban/jail.local

[sshd]
port    = ssh, 2000

[sshd-ddos]
port    = ssh, 2000

[dropbear]
port    = ssh, 2000

[selinux-ssh]
port    = ssh, 2000

نوفر باستخدام CTRL + O ونغلق باستخدام CTRL + X

نجدد الخدمة:

Fedora و RHEL و CentOS:

إعادة تشغيل systemctl fail2ban.service

دبيان ، أوبونتو:

إعادة تشغيل خدمة فشل 2ban

جدار الحماية

Fedora و RHEL و CentOS:

يتم تنشيط Selinux و Iptables افتراضيًا على هذه الأنظمة وأنا أوصيك بالمتابعة بهذه الطريقة. كيف تفتح منفذ مع iptables؟ دعونا نرى كيفية فتح المنفذ الجديد 2000 الخاص بمنفذ ssh الذي قمنا بتغييره سابقًا:

افتح:

nano / etc / sysconfig / iptables

ونقوم بتعديل الخط الذي يشير إلى منفذ ssh الافتراضي 22 ونتركه على هذا النحو:

# -A INPUT -m state - State NEW -m tcp -p tcp --dport 22 -j ACCEPT -A INPUT -p tcp -m state --state NEW -m tcp --dport 2000 -j ACCEPT

نوفر باستخدام CTRL + O ونغلق باستخدام CTRL + X

نعيد تشغيل الخدمة:

إعادة تشغيل systemctl iptables

ديبيان ، أوبونتو:

في Debian أو Ubuntu والمشتقات ، لدينا جدار حماية UFW الذي سيجعل حياتنا سهلة لأنه يدير Netfilter بسهولة بالغة.

التثبيت:

apt-get install ufw ufw enable

لمعرفة حالة المنافذ المفتوحة التي ننفذها:

حالة ufw

لفتح منفذ (في مثالنا سيكون منفذ ssh الجديد 2000):

ufw تسمح 2000

لرفض منفذ (في حالتنا سيكون المنفذ الافتراضي 22 من ssh):

ufw deny 22 ufw حذف رفض 22

وجاهزين الأصدقاء. بهذه الطريقة سوف يحافظون على أجهزتك آمنة. لا تنسى التعليق وحتى المرة القادمة: د.


اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها ب *

*

*

  1. المسؤول عن البيانات: ميغيل أنخيل جاتون
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.

  1.   سنمرمان قال

    ونظام تشفير مثل: https://www.dyne.org/software/tomb/

    1.    سنمرمان قال

      وأيضًا ضع المستخدمين في قفص في منزلك إذا اتصلوا بـ tty:
      http://olivier.sessink.nl/jailkit/index.html#intro
      https://operativoslinux.wordpress.com/2015/02/21/enjaular-usuarios-en-linux/ (الطريق السهل)

    2.    يوكيتيرو قال

      يعد تشفير نظام الملفات بأكمله أفضل بكثير وأكثر أمانًا.

    3.    بترشيكو قال

      بالنسبة إلى البرنامج التعليمي التالي بشأن الأمان في Linux ، سأضعه في الاعتبار: د.

      1.    يوكيتيرو قال

        سيكون من الجيد أيضًا التحدث عن تقوية النواة من خلال sysctl ، وتفعيل الكومة العشوائية و Exec-Shield في النواة التي تدعمها ، وتمكين الوصول إلى dmesg ونظام الملفات / proc ، وتشغيل برنامج تدقيق خفي ، وتمكين حماية TCP SYN ، تقييد الوصول إلى / dev / mem ، تعطيل خيارات مكدس TCP / IP التي يمكن أن تكون خطيرة أو غير آمنة للنظام (إعادة توجيه ، صدى ، توجيه المصدر) ، استخدم pam_cracklib للمستخدمين لإنشاء كلمات مرور قوية ، أهمية استخدام نظام MAC مثل Tomoyo و AppArmor و SELinux.

  2.   ورك قال

    مفيد جدا!!!! فقط ما كنت أبحث عنه شكرًا

    1.    بترشيكو قال

      على الرحب والسعة ياصديق :).

  3.   انجيل بليد قال

    إذا تم استخدام apache ، فلن يضر إضافة قواعد باستخدام mod_rewrite لتجنب برامج الروبوت. مفيد جدا

    http://perishablepress.com/eight-ways-to-blacklist-with-apaches-mod_rewrite/

    1.    رولو قال

      وبالنسبة إلى nginx ، فهل هناك أي خدعة أو تهيئة؟

  4.   رولو قال

    في دبيان 8 ، يحتوي الملف / etc / ssh / sshd_config على بروتوكول 2 نشط ووظيفة PermitRootLogin مع خيار بدون كلمة مرور (يمكنك فقط إدخال الجذر باستخدام مفتاح المصادقة ومن الكمبيوتر الذي يحتوي على المفتاح الخاص)

    وصل pd في جدار الحماية debian 8 الذي يتركه صغيرًا لـ ufw

    1.    صائد قال

      هل رأيت فيرم؟ أحب كيف يتم تعريف القواعد.

      http://ferm.foo-projects.org/download/examples/webserver.ferm

    2.    بترشيكو قال

      حسنًا ، أنا سعيد لأن Debian 8 يستخدم جدار الحماية لأنه جيد جدًا ...

  5.   صائد قال

    احذر من fail2ban حيث يقوم المهاجم بتصنيع الحزم باستخدام IP للكمبيوتر المحلي ويجعل DOS أمرًا سهلاً للغاية.

    1.    هيري قال

      يتم استبعاد Man و IP PC المحلي و IP الاسترجاع من قائمة Fail2ban.
      إذا لم يكن الأمر كذلك ، فقد يكون لدينا إيجابيات خاطئة.

  6.   جايسون سوتو قال

    توصيات جيدة وفعالة للغاية ... بالطبع ، في بيئة الخادم وإذا كنا نستضيف موقعًا على شبكة الإنترنت ، فإنه يتضمن خطوات إضافية ... نحافظ حاليًا على مشروع يسمى JackTheStripper وهو ليس أكثر من bash Script الذي يعد خادمًا ويؤمّنه مع GNU / Linux باتباع أفضل ممارسات الأمان لتطبيقات الويب ... يمكنك معرفة المشروع على http://www.jsitech.com/jackthestripper ....

    1.    يوكيتيرو قال

      برنامج نصي جميل على الرغم من أنني أحب الاحتفاظ بقيمة kernel.randomize_va_space = 2

      1.    جايسون سوتو قال

        الشيء الجيد هو أنه قبل تشغيله ، يمكنك تعديله قليلاً حسب احتياجاتك ..... مرحبًا ...

    2.    بترشيكو قال

      مرحبًا ، بالطبع يتعامل رسالتي مع قاعدة مؤمنة ويجب على كل شخص حماية نفسه بشكل أو بآخر اعتمادًا على الخدمات التي قام بتثبيتها في أنظمته مثل LAMP أو FTP و SFTP و BIND وما إلى ذلك:) ...

      في المنشور التالي حول الأمن سأتناول هذه القضايا.

      شكرا على التقييم الايجابي :).

  7.   NEX قال

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

    1.    بترشيكو قال

      مرحبا صديق،
      أنا مشغول بعض الشيء مع عروض النشر غير المتكررة ، لكنني سأضع ذلك في الاعتبار لمنشور FreeBSD التالي.

      تحيه :).

  8.   سولراك رينبواريور قال

    هذا مستقر في التعليقات ، ليس لدي أي فكرة عما تتحدث عنه ، لا أحد xD
    مقال رائع!

  9.   زونيل قال

    هذا الإجراء الأمني ​​يعني تقييد المعدات بأي شكل من الأشكال؟

    1.    بترشيكو قال

      لا ... لا يقتصر الاستخدام العادي للنظام على الإطلاق.

  10.   سنمرمان قال

    والشيء المضحك (المأساوي) هو أنه ، كما رأينا للتو مع أجهزة Lenovo ، إذا تم العبث ببرنامج BIOS الثابت بالبرامج الضارة ، فلا شيء تفعله مهمًا.

    1.    بترشيكو قال

      طالما أنك تستخدم Windows المثبت مسبقًا من قبل الشركة المصنعة ...

      1.    سنمرمان قال

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

  11.   بول قال

    مقال مثير للاهتمام ، سأقرأه بعناية أكبر بعد ظهر اليوم. شكرا.

    1.    بترشيكو قال

      عفوا :). أنا سعيد.

  12.   كارلوس بست قال

    مقال ممتاز ، لقد استمتعت بنفسي طوال فترة الظهيرة بقراءتها. نقدر الوقت الذي تستغرقه لشرح كل شيء بعناية فائقة ،

    تحية من تشيلي
    كارلوس

    1.    بترشيكو قال

      مرحبا كارلوس ،
      شكرا جزيلا :).

  13.   بريون قال

    أجهزة Lenovo ، إذا بدا أن البرامج الثابتة bios تتدخل ببرامج ضارة ، فإن الأجهزة (كمبيوتر محمول - كمبيوتر سطح المكتب) تأتي دائمًا مثبتة مع Windows من قبل الشركة المصنعة ، بالنظر إلى ما سبق ... هل المنشور… .petercheco؟

    1.    يوكيتيرو قال

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

  14.   SynFlag قال

    هناك العديد من الأشياء والحيل المفقودة من iptables ، مثل nmap بالدوار حتى أنه من بين جميع المنافذ المفتوحة ، يكذب أنه كمبيوتر يعمل بنظام windows باستخدام ttl وحجم النافذة أو scanlogd أو apache mod security أو grsec أو selinux أو شيء من هذا القبيل. استبدل ftp بـ sftp ، حدد عدد الاتصالات لكل IP لكل خدمة في منفذ X لتجنب ذلك قبل DDoS يتركون لنا بدون خدمات ، وكذلك حظر عناوين IP التي ترسل أكثر من UDP لعدة ثوانٍ.

    1.    بترشيكو قال

      مع الأمثلة التي قدمتها ، فإن المستخدم الجديد سيجن جنون قراءته ... لا يمكنك وضع كل شيء في منشور واحد. سأدلي عدة مداخل :).

  15.   شيني كيري قال

    لقد تلقيت خطأ في archlinux في هذه المرحلة عند تقديم خدمة البداية ، أعطيها حالة ويظهر هذا:
    حالة سودو systemctl Fail2ban
    ● fail2ban.service - خدمة Fail2Ban
    مُحمَّل: مُحمَّل (/usr/lib/systemd/system/fail2ban.service ؛ مُمكّن ؛ الإعداد المسبق للمورد: معطل)
    نشط: فشل (النتيجة: حد البداية) منذ الجمعة 2015/03/20 01:10:01 توقيت تشيلي؛ قبل 1 ثانية
    المستندات: man: fail2ban (1)
    العملية: 1695 ExecStart = / usr / bin / fail2ban-client -x بدء (الرمز = تم الخروج ، الحالة = 255)

    مارس 20 01:10:01 Gundam systemd [1]: فشل بدء خدمة Fail2Ban.
    مارس 20 01:10:01 Gundam systemd [1]: دخلت الوحدة fail2ban.service في حالة فشل.
    20 مارس 01:10:01 نظام جاندام [1]: فشل fail2ban.service.
    20 مارس 01:10:01 نظام جاندام [1]: طلب البدء يتكرر بسرعة كبيرة بالنسبة لـ fail2ban… ice
    مارس 20 01:10:01 Gundam systemd [1]: فشل بدء خدمة Fail2Ban.
    مارس 20 01:10:01 Gundam systemd [1]: دخلت الوحدة fail2ban.service في حالة فشل.
    20 مارس 01:10:01 نظام جاندام [1]: فشل fail2ban.service.
    تلميح: تم ellipsized بعض الأسطر ، استخدم -l لإظهار بالكامل.
    بعض المساعدة؟ د:

    1.    بترشيكو قال

      مرحبًا ، إذا قمت بتمكين fail2ban مع تمكين systemctl fail2ban.service وبدء systemctl fail2ban.service ، فستكون المشكلة في تكوين السجن الذي أجريته. يرجى التحقق من سجنك والتأكد من أن كل شيء على ما يرام.

      تحيات
      بيترشيكو

      1.    ميكل فرانكو قال

        أولا وقبل كل شيء تعليمي جيد. أشياء كثيرة مفقودة لكنك ركزت على الأساسيات.

        shini-kire ، تحقق من /var/log/fail2ban.log

        تحية.

      2.    بترشيكو قال

        شكرا لك مايكل فرانكو :).

  16.   jony127 قال

    جيدة،

    fail2ban هل يجب تثبيته على جهاز كمبيوتر منزلي أم أنه أكثر للخوادم ؟؟؟

    غراسياس.

    1.    بترشيكو قال

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

  17.   رودريغو قال

    مرحبًا يا صديقي ، أعتقد أنه منشور أمان جيد في جزء من حريق قصير في توزيعات Gnu / Linux ، أنا أكتب هذا التعليق لأنني أقوم بذلك في توزيع Ubuntu 14.04 مع العلم أنه موجود بالفعل في 15.04 ، ما يحدث هو المشكلة التالية أدخل nano /etc/fail2ban/jail.local كجذر وليس لدي تصور في جزء sshd وحفظ في الجزء المسمى [DEFAULT] نقوم بإلغاء التعليق وتعديل #bantime = 3600 و
    في الجزء [sshd] نقدم تمكين = صحيح وتركه على هذا النحو:
    #enabled = صحيح
    تمكين = صحيح
    لا يبدو أن sshd يمكن أن يكون لأنني أعمل الإصدار السابق شكرا