إعداد الشبكة بشكل صحيح وتأمين الوصول إلى السيرفر أمر حيوي لضمان الأداء الجيد والحماية من الاختراقات. إليك الخطوات الأساسية لتكوين الشبكة وتأمين السيرفر بشكل فعال:
🖥 1. التحقق من إعدادات الشبكة
🔹 لمعرفة عنوان IP الحالي للسيرفر، استخدم:
bash
ip a
🔹 أو للحصول على تكوين أكثر تفصيلاً:
bash
ifconfig
🔹 إذا كنت بحاجة إلى معرفة بوابة الشبكة (Gateway) وخوادم DNS، استخدم:
bash
nmcli device show
⚙️ 2. تعيين عنوان IP ثابت
بشكل افتراضي، يحصل السيرفر على عنوان IP ديناميكي عبر DHCP، ولكن الأفضل هو تعيين IP ثابت لضمان استقرار الاتصال:
📌 تحرير ملف netplan (في Ubuntu 20.04 وما بعده):
bash
sudo nano /etc/netplan/00-installer-config.yaml
✍️ أضف التعديلات التالية:
yaml
network:
ethernets:
eth0:
addresses:
- 192.168.1.100/24
gateway4: 192.168.1.1
nameservers:
addresses:
- 8.8.8.8
- 1.1.1.1
version: 2
✅ احفظ التعديلات ثم طبّقها باستخدام:
bash
sudo netplan apply
📌 يمكنك التأكد من أن التغييرات تمت بنجاح عبر:
bash
ip a | grep inet
🔒 3. تأمين الوصول إلى السيرفر
🛡 أول خطوة في تأمين السيرفر هي التحكم في كيفية الوصول إليه، وذلك عبر:
✅ إعداد SSH للدخول الآمن
🚀 إذا لم يكن SSH مثبتًا، يمكنك تثبيته عبر:
bash
sudo apt install openssh-server
📌 تأمين SSH عبر تعديل إعداداته:
bash
sudo nano /etc/ssh/sshd_config
🔹 تعطيل تسجيل الدخول باستخدام كلمة المرور (استخدام المفاتيح بدلًا من ذلك):
bash
PasswordAuthentication no
🔹 تغيير المنفذ الافتراضي لـ SSH (لتقليل الهجمات العشوائية):
bash
Port 2222
✅ بعد تعديل الإعدادات، أعد تشغيل خدمة SSH:
bash
sudo systemctl restart ssh
🛡 4. إعداد جدار الحماية (UFW) لمنع الوصول غير المصرح به
📌 تفعيل جدار الحماية UFW:
bash
sudo ufw enable
✅ السماح فقط بمنفذ SSH (وإذا غيرت المنفذ، ضعه بدلًا من 22):
bash
sudo ufw allow 2222/tcp
✅ السماح بمنفذ HTTP (80) وHTTPS (443) إذا كنت ستستخدم سيرفر ويب:
bash
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
📌 لمعرفة القواعد الحالية:
bash
sudo ufw status
🚀 يمكنك إغلاق أي منفذ غير ضروري لضمان أمان أقوى.
📡 5. حماية الشبكة باستخدام Fail2Ban
📌 تثبيت Fail2Ban لمنع الهجمات المتكررة على SSH:
bash
sudo apt install fail2ban
✅ تشغيل الخدمة:
bash
sudo systemctl enable fail2ban
sudo systemctl start fail2ban
📌 يمكنك تعديل إعداداته لمنع المحاولات المتكررة لتسجيل الدخول:
bash
sudo nano /etc/fail2ban/jail.local
✍️ أضف:
ini
[sshd]
enabled = true
maxretry = 3
bantime = 600
🔹 هذا يمنع أي IP من المحاولة أكثر من 3 مرات، ويمنعه لمدة 600 ثانية.