ذكري المظهر

كيفية إعداد جدار الحماية مع ufw على أوبونتو 18.04

تنصيب وتشغيل الجدار الناري في نظام تشغيل اللينكس اوبونتو Ubuntu Firewall

تنصيب وتشغيل الجدار الناري في نظام تشغيل اللينكس اوبونتو Ubuntu Firewall

جدول المحتويات:

Anonim

يعد جدار الحماية المكوّن بشكل صحيح أحد أهم جوانب أمان النظام الكلي. بشكل افتراضي ، يأتي Ubuntu مع أداة تكوين جدار الحماية تسمى UFW (جدار حماية غير معقد). UFW هي واجهة سهلة الاستخدام لإدارة قواعد جدار الحماية iptables وهدفها الرئيسي هو جعل إدارة iptables أسهل أو كما يقول الاسم غير معقد.

المتطلبات الأساسية

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

تثبيت UFW

يجب تثبيت جدار الحماية غير المعقد افتراضيًا في Ubuntu 18.04 ، ولكن إذا لم يكن مثبتًا على نظامك ، فيمكنك تثبيت الحزمة عن طريق الكتابة:

sudo apt install ufw

تحقق من حالة UFW

بمجرد اكتمال التثبيت ، يمكنك التحقق من حالة UFW باستخدام الأمر التالي:

sudo ufw status verbose

تم تعطيل UFW بشكل افتراضي. إذا لم تقم بتنشيط UFW من قبل ، فسيظهر الإخراج بالشكل التالي:

Status: inactive

إذا تم تنشيط UFW ، سيبدو الإخراج مماثلاً لما يلي:

سياسات الافتراضي UFW

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

يتم تعريف السياسات الافتراضية في الملف /etc/default/ufw ويمكن تغييرها باستخدام sudo ufw default أمر.

سياسات جدار الحماية هي أساس بناء قواعد أكثر تفصيلًا ومعرفة من قبل المستخدم. في معظم الحالات ، تعد سياسات UFW الافتراضية الأولية نقطة انطلاق جيدة.

ملامح التطبيق

عند تثبيت حزمة باستخدام الأمر apt ، ستضيف ملف تعريف تطبيق إلى دليل /etc/ufw/applications.d . يصف ملف التعريف الخدمة ويحتوي على إعدادات UFW.

يمكنك سرد جميع ملفات تعريف التطبيق المتاحة على الخادم الخاص بك عن طريق كتابة:

sudo ufw app list

اعتمادًا على الحزم المثبتة على نظامك ، سيبدو الإخراج مماثلاً لما يلي:

Available applications: Dovecot IMAP Dovecot POP3 Dovecot Secure IMAP Dovecot Secure POP3 Nginx Full Nginx HTTP Nginx HTTPS OpenSSH Postfix Postfix SMTPS Postfix Submission

للعثور على مزيد من المعلومات حول ملف تعريف معين والقواعد المضمنة ، استخدم الأمر التالي:

sudo ufw app info 'Nginx Full'

Profile: Nginx Full Title: Web Server (Nginx, HTTP + HTTPS) Description: Small, but very powerful and efficient web server Ports: 80, 443/tcp

كما ترون من الإخراج أعلاه ، يفتح ملف التعريف "Nginx Full" المنفذ 80 و 443 .

السماح باتصالات SSH

قبل تمكين جدار الحماية UFW ، نحتاج إلى إضافة قاعدة تسمح باتصالات SSH الواردة. إذا كنت تتصل بخادمك من موقع بعيد ، وهو ما يحدث دائمًا ، وتمكّن جدار حماية UFW قبل السماح صراحة باتصالات SSH الواردة ، فلن تتمكن بعد ذلك من الاتصال بخادم Ubuntu.

لتكوين جدار الحماية UFW للسماح باتصالات SSH الواردة ، اكتب الأمر التالي:

sudo ufw allow ssh

Rules updated Rules updated (v6)

إذا قمت بتغيير منفذ SSH إلى منفذ مخصص بدلاً من المنفذ 22 ، فستحتاج إلى فتح ذلك المنفذ.

على سبيل المثال ، إذا كان برنامج ssh daemon يستمع إلى المنفذ 4422 ، فيمكنك استخدام الأمر التالي للسماح بالاتصالات على هذا المنفذ:

sudo ufw allow 4422/tcp

تمكين UFW

الآن وقد تم تكوين جدار الحماية UFW الخاص بك للسماح باتصالات SSH الواردة ، يمكننا تمكينه عن طريق كتابة:

sudo ufw enable

Command may disrupt existing ssh connections. Proceed with operation (y|n)? y Firewall is active and enabled on system startup

سيتم تحذيرك من أن تمكين جدار الحماية قد يعطل اتصالات ssh الحالية ، فقط اكتب y واضغط على Enter .

السماح بالاتصالات على المنافذ الأخرى

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

أدناه سوف نعرض لكم بعض الأمثلة حول كيفية السماح بالاتصالات الواردة لبعض الخدمات الأكثر شيوعًا:

افتح المنفذ 80 - HTTP

يمكن السماح باتصالات HTTP باستخدام الأمر التالي:

sudo ufw allow

بدلاً من http يمكنك استخدام رقم المنفذ ، 80:

sudo ufw allow 80/tcp

أو يمكنك استخدام ملف تعريف التطبيق ، في هذه الحالة ، "Nginx

sudo ufw allow 'Nginx

افتح المنفذ 443 - HTTPS

يمكن السماح باتصالات HTTP باستخدام الأمر التالي:

sudo ufw allow

لتحقيق ذلك بدلاً من https يمكنك استخدام رقم المنفذ ، 443 :

sudo ufw allow 443/tcp

أو يمكنك استخدام ملف تعريف التطبيق ، 'Nginx

sudo ufw allow 'Nginx

افتح المنفذ 8080

sudo ufw allow 8080/tcp

اسمح لمجال النطاقات

بدلاً من السماح بالوصول إلى المنافذ الفردية ، تتيح لنا UFW السماح بالوصول إلى نطاقات المنافذ. عند السماح لنطاقات المنافذ باستخدام UFW ، يجب عليك تحديد البروتوكول ، إما tcp أو udp . على سبيل المثال ، إذا كنت تريد السماح للمنافذ من 7100 إلى 7200 على كل من tcp و udp ، udp بتشغيل الأمر التالي:

sudo ufw allow 7100:7200/tcp sudo ufw allow 7100:7200/udp

السماح بعناوين IP محددة

للسماح بالوصول إلى جميع المنافذ من جهازك المنزلي باستخدام عنوان IP الخاص بـ 64.63.62.61 ، حدد from يليه عنوان IP الذي تريد إدراجه في القائمة البيضاء:

sudo ufw allow from 64.63.62.61

السماح بعناوين IP محددة على منفذ معين

للسماح بالوصول على منفذ معين ، دعنا نقول المنفذ 22 من جهاز العمل الخاص بك وعنوان IP 64.63.62.61 ، استخدم to any port متبوعًا برقم المنفذ:

sudo ufw allow from 64.63.62.61 to any port 22

السماح للشبكات الفرعية

أمر السماح بالاتصال بشبكة فرعية من عناوين IP هو نفسه عند استخدام عنوان IP واحد ، والفرق الوحيد هو أنك تحتاج إلى تحديد قناع الشبكة. على سبيل المثال ، إذا كنت تريد السماح بالوصول إلى عناوين IP التي تتراوح من 192.168.1.1 إلى 192.168.1.254 إلى المنفذ 3360 (MySQL) ، يمكنك استخدام هذا الأمر:

sudo ufw allow from 192.168.1.0/24 to any port 3306

السماح بالاتصالات بواجهة شبكة محددة

للسماح بالوصول على منفذ معين ، دعنا نقول المنفذ 3360 فقط لـ eth2 لواجهة شبكة محددة ، فأنت بحاجة إلى تحديد allow in on واسم واجهة الشبكة:

sudo ufw allow in on eth2 to any port 3306

رفض الاتصالات

يتم ضبط السياسة الافتراضية لجميع الاتصالات الواردة على deny وإذا لم تقم بتغييرها ، فسوف تقوم UFW بحظر جميع الاتصالات الواردة إلا إذا قمت بفتح الاتصال على وجه التحديد.

لنفترض أنك فتحت المنفذين 80 و 443 وأن 23.24.25.0/24 يتعرض للهجوم من شبكة 23.24.25.0/24 . لرفض جميع الاتصالات من 23.24.25.0/24 يمكنك استخدام الأمر التالي:

sudo ufw deny from 23.24.25.0/24

sudo ufw deny from 23.24.25.0/24 to any port 80 sudo ufw deny from 23.24.25.0/24 to any port 443

كتابة قواعد رفض هي نفس قواعد السماح بالكتابة ، ما عليك سوى استبدال allow به.

حذف قواعد UFW

هناك طريقتان مختلفتان لحذف قواعد UFW ، حسب رقم القاعدة وتحديد القاعدة الفعلية.

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

sudo ufw status numbered

Status: active To Action From -- ------ ---- 22/tcp ALLOW IN Anywhere 80/tcp ALLOW IN Anywhere 8080/tcp ALLOW IN Anywhere

لحذف القاعدة رقم 3 ، القاعدة التي تسمح بالاتصال بالمنفذ 8080 ، استخدم الأمر التالي:

sudo ufw delete 3

الطريقة الثانية هي حذف قاعدة عن طريق تحديد القاعدة الفعلية ، على سبيل المثال إذا قمت بإضافة قاعدة لفتح المنفذ 8069 يمكنك حذفها باستخدام:

sudo ufw delete allow 8069

تعطيل UFW

إذا كنت ترغب في إيقاف UFW لأي سبب من الأسباب وإلغاء تنشيط جميع القواعد التي يمكنك استخدامها:

sudo ufw disable

في وقت لاحق إذا كنت ترغب في إعادة تمكين UTF وتفعيل جميع القواعد ، اكتب فقط:

sudo ufw enable

إعادة تعيين UFW

تؤدي إعادة تعيين UFW إلى تعطيل UFW ، وحذف جميع القواعد النشطة. يعد هذا مفيدًا إذا كنت ترغب في التراجع عن كل تغييراتك والبدء من جديد.

لإعادة تعيين UFW ، ببساطة اكتب الأمر التالي:

sudo ufw reset

استنتاج

لقد تعلمت كيفية تثبيت وتكوين جدار الحماية UFW على خادم Ubuntu 18.04. تأكد من السماح لجميع الاتصالات الواردة الضرورية لتشغيل نظامك بشكل صحيح ، مع الحد من جميع الاتصالات غير الضرورية.

ufw جدار الحماية iptables أوبونتو الأمن