راوتر MikroTik مكشوف على الإنترنت بجدار ضعيف ليس مشكلة نظرية. فمحاولات الدخول تصل إلى أي عنوان عام بلا توقف، وأبواب الإدارة المفتوحة أول ما تبحث عنه البرامج الآلية. والخبر الجيد أن جداراً سليماً لا يحتاج إلى مئات القواعد.
يكفيك فهم بضع أفكار وترتيب صحيح. هذا المقال يبني جداراً واضحاً لـRouterOS v7، مع شرح سبب كل قاعدة، حتى تعدّله بثقة بدل نسخه عمياناً.
ثلاث سلاسل تكفي للبداية
الجدار في RouterOS يقرأ القواعد من الأعلى إلى الأسفل، ويتوقف عند أول قاعدة تقبل الحزمة أو ترفضها. ولهذا فالترتيب جزء من الأمان، وليس مسألة شكلية.
| السلسلة | ما تحميه | مثال |
|---|---|---|
| input | الراوتر نفسه | محاولة دخول SSH إلى الراوتر |
| forward | الترافيك العابر من شبكة إلى أخرى | جهاز في المكتب يفتح موقعاً |
| output | ما يخرج من الراوتر نفسه | الراوتر يستعلم عن DNS |
والقاعدة الذهبية: اسمح بما تحتاج إليه، ثم ارفض الباقي. أما العكس، أي منع ما تعرفه وترك الباقي، فلا ينتهي أبداً.
قبل أي قاعدة: تأمين طريق رجوعك
الخطأ الكلاسيكي أن تضع قاعدة الرفض قبل قاعدة السماح، فتطرد نفسك. لتجنب ذلك خذ نسخة، وافتح Safe Mode بضغط Ctrl+X في الطرفية، فتُلغى التغييرات إن انقطعت جلستك.
/export file=before-firewall
/system backup save name=before-firewall
ملف export نصي وسهل المراجعة، أما backup فللاسترجاع على الجهاز نفسه. انقلهما إلى خارج الراوتر، فالنسخة التي تبقى على الجهاز تضيع معه.
تعريف واجهات WAN وLAN
القوائم تجعل القواعد أوضح وأسهل صيانة. فبدل تكرار اسم المنفذ، تكتب WAN وLAN. وعند تغيير الخط تعدّل مكاناً واحداً.
/interface list add name=WAN
/interface list add name=LAN
/interface list member add list=WAN interface=ether1
/interface list member add list=LAN interface=bridge
إن كان عندك PPPoE فأضف pppoe-out1 إلى قائمة WAN بدل ether1. وعلى الأجهزة الجاهزة قد تجد القائمتين موجودتين، فراجع قبل الإضافة. ويختلف الأمر على CHR الذي يبدأ بلا جدار افتراضي.
قواعد حماية الراوتر: سلسلة input
/ip firewall filter
add chain=input connection-state=established,related,untracked \
action=accept comment="input-established"
add chain=input connection-state=invalid action=drop \
comment="input-invalid"
add chain=input protocol=icmp action=accept comment="input-icmp"
add chain=input in-interface-list=LAN action=accept comment="input-lan"
add chain=input action=drop comment="input-drop-all"
القاعدة الأولى تقبل ردود الاتصالات التي بدأها الراوتر، وهي أسرع طريق لأغلب الحزم. والثانية تتخلص من الحزم الفاسدة. والثالثة تبقي ICMP مفتوحاً، لأن إغلاقه يصنع مشكلات MTU ويصعّب التشخيص. والأخيرة ترفض كل ما لم يُسمح به.
إن كنت تستعمل WireGuard، فأضف قاعدة السماح بمنفذه قبل قاعدة الرفض الأخيرة:
/ip firewall filter add chain=input protocol=udp dst-port=13231 \
action=accept comment="input-wireguard" \
place-before=[find comment="input-drop-all"]
قواعد حماية الشبكة: سلسلة forward
/ip firewall filter
add chain=forward connection-state=established,related \
action=fasttrack-connection hw-offload=yes comment="fwd-fasttrack"
add chain=forward connection-state=established,related,untracked \
action=accept comment="fwd-established"
add chain=forward connection-state=invalid action=drop \
comment="fwd-invalid"
add chain=forward connection-state=new connection-nat-state=!dstnat \
in-interface-list=WAN action=drop comment="fwd-drop-wan"
/ip firewall nat add chain=srcnat out-interface-list=WAN \
action=masquerade comment="nat-out"
القاعدة الرابعة هي قلب الحماية. فهي ترفض أي اتصال جديد قادم من الإنترنت، إلا ما مر عبر dstnat بقرار صريح منك، كمنفذ حولته إلى سيرفر داخلي.
أما FastTrack فيخفف الحمل عن المعالج، لكنه يتجاوز الطوابير البسيطة. فإن طبقت إدارة عرض النطاق، فراجع هذه القاعدة.
إغلاق الأبواب الأخرى
الجدار ليس خط الدفاع الوحيد. أغلق الخدمات التي لا تحتاج إليها، وقيّد البقية، وعطّل ما يعلن عن الراوتر خارج الشبكة:
/ip service disable telnet,ftp,www,api,api-ssl
/ip service set ssh address=192.168.88.0/24
/ip service set winbox address=192.168.88.0/24
/ip neighbor discovery-settings set discover-interface-list=LAN
/tool mac-server set allowed-interface-list=LAN
/tool mac-server mac-winbox set allowed-interface-list=LAN
/tool bandwidth-server set enabled=no
/ip proxy set enabled=no
/ip socks set enabled=no
وأنشئ مستخدماً إدارياً باسم خاص، ثم عطّل admin، وثبّت آخر إصدار مستقر. وإن كانت لديك عناوين IPv6، فلا تنسَ /ipv6 firewall filter، فهو جدار مستقل عن IPv4، وقواعد أحدهما لا تحمي الآخر.
وللدخول من الخارج، لا تفتح WinBox للإنترنت. استعمل WireGuard، ثم اسمح بالإدارة من شبكة النفق فقط:
/ip firewall address-list add list=mgmt address=10.66.66.0/24
/ip firewall filter add chain=input src-address-list=mgmt \
action=accept comment="input-mgmt" \
place-before=[find comment="input-drop-all"]
التأكد من أن الجدار يعمل
لا تثق بالقواعد لأنها مكتوبة. انظر إلى العدادات، فالقاعدة التي لا يصلها شيء قد تكون في غير مكانها:
/ip firewall filter print stats
/ip firewall connection print count-only
ثم افحص الراوتر من خارج شبكتك، لا من داخلها. فالفحص من الداخل يعطيك نتيجة مطمئنة خاطئة. ولا يكون السجل مفيداً إلا إذا كان مركزاً، فسجّل القواعد المهمة فقط، لأن تسجيل كل شيء يغرق الذاكرة والقارئ.
والأمن يرتبط بالموارد أيضاً. فالراوتر الضعيف قد ينشغل بفحص الاتصالات تحت هجوم صغير. وكذلك السيرفر، فالقرب ليس كل شيء، إذ يسقط السيرفر القريب بعتاد ضعيف أمام ضغط يتحمله سيرفر قوي. ولا نذكر هنا أرقاماً لأجهزة MikroTik، فلم نقسها.
نشر خدمة داخلية بطريقة صحيحة
أحياناً تحتاج إلى إظهار سيرفر داخلي للإنترنت، مثل نظام ويب على المنفذ 443. استعمل dstnat، وستسمح قاعدة fwd-drop-wan بهذا الاتصال، لأنها تستثني ما مر عبر dstnat:
/ip firewall nat add chain=dstnat in-interface-list=WAN protocol=tcp dst-port=443 action=dst-nat to-addresses=192.168.88.10 to-ports=443 comment="publish-web"
افتح أقل عدد ممكن من المنافذ، ولا تنشر منفذ سطح المكتب البعيد أو قواعد البيانات على الإنترنت. فهذه الخدمات مكانها خلف نفق، لا أمام العالم كله. وكل منفذ تنشره يصبح مسؤولية تحديث ومراقبة دائمة.
أخطاء تتكرر كثيراً
- الاعتماد على تغيير المنفذ: نقل SSH إلى منفذ آخر يقلل الضجيج في السجل، لكنه ليس حماية.
- كلمة مرور ضعيفة: الجدار لا يحميك إن كان الباب الوحيد المفتوح بكلمة سهلة.
- نسخ قواعد قديمة: بعض الأمثلة المنتشرة كُتبت لإصدارات سابقة، فراجع كل قاعدة قبل لصقها.
- ترك النسخ القديمة: الإصدار المتأخر قد يحمل ثغرات معروفة، فتابع التحديثات المستقرة.
- ثقة زائدة بالداخل: جهاز مصاب داخل الشبكة يتجاوز حماية WAN، فاعزل الضيوف والكاميرات في شبكات مستقلة.
واجعل مراجعة الجدار عادة كل بضعة أشهر. احذف القواعد التي لم يعد لها سبب، واكتب في comment لماذا وُجدت كل قاعدة. فمن يدير الراوتر بعدك، وقد تكون أنت بعد سنة، سيحتاج إلى هذا الشرح. والجدار الصغير المفهوم أكثر أماناً من جدار كبير يخشى الجميع لمسه.
وإن أردت طريقة منظمة للمراجعة، فاتبع هذا الترتيب كل مرة. ابدأ بسلسلة input، وتأكد أن الإدارة مقيدة. ثم انتقل إلى forward، وتأكد أن قاعدة رفض الاتصالات الجديدة من WAN ما زالت في مكانها. ثم راجع NAT، واحذف أي منفذ لم يعد مستعملاً. وبعدها افحص قائمة المستخدمين، وتأكد أن من ترك العمل لم يعد يملك حساباً. هذا الفحص لا يستغرق وقتاً طويلاً، لكنه يكشف كثيراً مما يتراكم بصمت عبر الأشهر، ويبقي الراوتر كما صممته فعلاً.
ودوّن تاريخ كل مراجعة، فالسجل البسيط يخبرك متى تغير الإعداد آخر مرة.
تذكير: هذه قواعد أساس لشبكة صغيرة أو متوسطة، وليست كل ما يلزم لكل بيئة. لو كانت عندك VLAN أو خدمات منشورة، فأضف قواعد عزل بينها. وراجع الإعداد بعد كل تغيير كبير، وبعد كل ترقية رئيسية.
الخلاصة
احمِ الراوتر في input، واحمِ الشبكة في forward، وأغلق الخدمات، وافحص من الخارج. بهذا تملك أساساً نظيفاً يسهل فهمه والبناء عليه.
وإن كنت تريد نقل خدماتك إلى بيئة مستقرة بعيداً عن انقطاعات المكتب، فسيرفرات مرام خيار عملي يمنحك عنواناً ثابتاً وموارد واضحة. وتتوفر لدينا خيارات منافذ بسرعات أعلى تصل إلى 100 جيجابت حسب التوفر والموقع، ونؤكد التفاصيل قبل الطلب.
