ملاحظة: الشرح مبني على iptables الذي يعتبر legacy/قديم الان ولا ينصح باستخدامه. استخدم الشرح الجديد.
بسم الله، والحمد لله، والصلاة والسلام على رسول الله وعلى آله وصحبه ومن اهتدى بهداه، السلام عليكم ورحمة الله وبركاته تحيه طيبه أما بعد:
ماذا يقصد بالتسهيل؟ مثال:
لفتح نافذه 22 وهي الخاصه بssh عن طريق iptables نكتب:
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
بينما مع UFW نكتب:
sudo ufw allow ssh
او
sudo ufw allow 22/tcp
ملاحظه: صحيح ان UFW فارق السهوله واضح ولكن لا يحتوي على جميع الخيارات/التفاصيل لذلك الناس المتقدمين في هذا المجال لا يعتمدون عليه.
- التنصيب بالنسبه للتوزيعات الديبيانيه (بعض التوزيعات يكون مسطب بشكل تلقائي)
sudo apt install ufw
بعد التنصيب يكون ufw غير مفعل بشكل تلقائي وذلك بسبب اذا قام احدهم بتنصيبه على سيرفر خارجي ويكون مفعل بشكل تلقائي وهذا يعني قطع جميع اتصالات الIncoming (وهو الخيار المفعل تلقائيا مع UFW) فسيقطع اتصال الSSH,VNC..الخ وهنالك بعض الاستثناءات لذلك يمكن الاطلاع عليها في الملفات etc/ufw/ او:
sudo ufw show raw
لذا لتدارك ذلك يكون بشكل غير مفعل تلقائياً ثم يقوم المستخدم بالسماح برقم المنفذ المناسب ثم تفعيله بعد ذلك.
- نقوم بتفعيله
sudo ufw enable
- مثلا اذا اردنا فتح منفذ 53 للUDP ,TCP
sudo ufw allow 53
- اذا اردنا معرفه الحاله لUFW
sudo ufw status verbose
- وستظهر
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), disabled (routed)
New profiles: skip
To Action From
-- ------ ----
53 ALLOW IN Anywhere
53 (v6) ALLOW IN Anywhere (v6)
- اذا اردت اختيار للUDP فقط
sudo ufw allow 53/udp
- اذا اردنا اطفاء الPing (لان ufw يقوم بالسماح به بشكل تلقائي) للحاسوب نقوم بالذهاب الى
etc/ufw/before.rules/
sudo nano /etc/ufw/before.rules
سنلاحظ وجود هذه الخيارات:
# ok icmp codes for INPUT
-A ufw-before-input -p icmp --icmp-type destination-unreachable -j ACCEPT
-A ufw-before-input -p icmp --icmp-type time-exceeded -j ACCEPT
-A ufw-before-input -p icmp --icmp-type parameter-problem -j ACCEPT
-A ufw-before-input -p icmp --icmp-type echo-request -j ACCEPT
# ok icmp code for FORWARD
-A ufw-before-forward -p icmp --icmp-type destination-unreachable -j ACCEPT
-A ufw-before-forward -p icmp --icmp-type time-exceeded -j ACCEPT
-A ufw-before-forward -p icmp --icmp-type parameter-problem -j ACCEPT
-A ufw-before-forward -p icmp --icmp-type echo-request -j ACCEPT
قم بتغيير جميع ACCEPT الى DROP ثم بعدها اضغط على ctrl مع x ثم y للحفظ والخروج
ثم قم بعمل اعاده تحميل ufw (او للجهاز نفسه ان احببت)
sudo ufw reload
ورؤيه باقي الخيارات والتفاصيل هنا.
بالنسبه لGUFW فنفس الامر:
- التنصيب بالنسبه للتوزيعات الديبيانيه (بعض التوزيعات يكون مسطب بشكل تلقائي)
sudo apt install gufw
ويكون غير مفعل بشكل تلقائي وقم بتفعيله بالضغط على الزر المقابل لStatus لكي يكون بهذا الشكل:
تستطيع الذهاب هنا لتفاصيل اكثر.
