برقراری امنیت در شبکه با MikroTik
سرفصل: میکروتیک

هر روتری که IP عمومی دارد، چند دقیقه بعد از اتصال به اینترنت اسکن می‌شود. رباتها رمزهای رایج را روی Winbox، SSH و وب امتحان می‌کنند و دنبال DNS باز و سرویس‌های آسیب‌پذیر می‌گردند. در سال‌های گذشته، تعداد زیادی روتر میکروتیک که به‌روز نشده یا تنظیمات ناامن داشتند، در بات‌نت‌ها استفاده شده‌اند. این مقاله یک پیکربندی امن و قابل فهم را قدم‌به‌قدم نشان می‌دهد.

فرض ما این است که لیست‌های اینترفیس WAN و LAN را ساخته‌اید (مقالهٔ راه‌اندازی اولیه) و شبکهٔ داخلی 192.168.10.0/24 است.

فایروال میکروتیک در یک نگاه

  • chain=input: ترافیکی که مقصدش خود روتر است؛ مثل Winbox، DNS و پینگ به روتر.
  • chain=forward: ترافیکی که از روتر عبور می‌کند؛ مثل کاربران داخلی که به اینترنت می‌روند.
  • قانون‌ها از بالا به پایین بررسی می‌شوند و اولین قانونی که مطابقت داشته باشد اجرا می‌شود.

۱. محافظت از خود روتر (input)

/ip firewall filter
add chain=input action=accept connection-state=established,related,untracked comment="input: accept established"
add chain=input action=drop connection-state=invalid comment="input: drop invalid"
add chain=input action=accept protocol=icmp comment="input: accept ICMP"
add chain=input action=accept in-interface-list=LAN comment="input: accept from LAN"
add chain=input action=drop comment="input: drop everything else"

با این پنج قانون، از سمت اینترنت هیچ‌کس نمی‌تواند به Winbox، SSH یا DNS روتر وصل شود. اگر VPN روی روتر دارید، قبل از قانون آخر پورت آن را باز کنید.

قبل از اضافه کردن قانون آخر مطمئن شوید از یک اینترفیس عضو LAN به روتر وصل هستید؛ وگرنه دسترسی خودتان هم قطع می‌شود. اگر روی روتر راه دور کار می‌کنید، از Safe Mode (دکمهٔ Safe Mode در Winbox یا Ctrl+X در ترمینال) استفاده کنید تا اگر اتصال قطع شد، تغییرها خودکار برگردند.

۲. محافظت از شبکهٔ داخلی (forward)

/ip firewall filter
add chain=forward action=fasttrack-connection connection-state=established,related hw-offload=yes comment="forward: fasttrack"
add chain=forward action=accept connection-state=established,related,untracked comment="forward: accept established"
add chain=forward action=drop connection-state=invalid comment="forward: drop invalid"
add chain=forward action=drop connection-state=new connection-nat-state=!dstnat in-interface-list=WAN comment="forward: drop new from WAN unless port-forwarded"

قانون آخر یعنی از اینترنت هیچ اتصال جدیدی به شبکهٔ داخلی نمی‌آید، مگر این‌که خودتان برایش Port Forwarding نوشته باشید. FastTrack سرعت روتر را برای ترافیک عادی بالا می‌برد، اما Mangle و صف‌بندی را برای آن ترافیک دور می‌زند.

۳. بستن سرویس‌های اضافه

/ip service print
/ip service disable telnet,ftp,www,api,api-ssl
/ip service set winbox address=192.168.10.0/24
/ip service set ssh address=192.168.10.0/24
  • Telnet و FTP بدون رمزنگاری‌اند.
  • اگر از WebFig استفاده نمی‌کنید، www را ببندید.
  • Winbox و SSH فقط از شبکهٔ داخلی (یا فقط از آدرس کامپیوترهای مدیر) در دسترس باشند.

سرویس‌های دیگری که معمولاً لازم نیستند:

/ip proxy set enabled=no
/ip socks set enabled=no
/ip upnp set enabled=no
/tool bandwidth-server set enabled=no
/ip ssh set strong-crypto=yes

۴. کشف همسایه و دسترسی MAC فقط از داخل

میکروتیک به‌طور پیش‌فرض خودش را با پروتکل‌های کشف همسایه معرفی می‌کند و اجازهٔ ورود با آدرس MAC را می‌دهد. این‌ها را به شبکهٔ داخلی محدود کنید:

/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

۵. DNS باز نباشد

اگر allow-remote-requests=yes است، قانون input بالا جلوی درخواست DNS از اینترنت را می‌گیرد. هیچ‌وقت آن قانون آخر (drop everything else) را حذف نکنید؛ روتری که DNS باز دارد، در حمله‌های DDoS به دیگران سوءاستفاده می‌شود.

۶. کاربران و رمزها

  • کاربر admin را غیرفعال کنید و کاربر با نام دیگر بسازید.
  • برای هر مدیر کاربر جدا بسازید تا در گزارش‌ها معلوم باشد چه کسی چه کرده.
  • برای کسی که فقط باید وضعیت را ببیند، گروه read کافی است.
/user add name=support group=read password="Read-Only-Pass"

۷. جدا کردن شبکهٔ مهمان

شبکهٔ مهمان (مثلاً VLAN 30 با آدرس 192.168.30.0/24) نباید به شبکهٔ داخلی دسترسی داشته باشد:

/ip firewall filter add chain=forward src-address=192.168.30.0/24 dst-address=192.168.10.0/24 action=drop comment="Guest cannot reach LAN" place-before=0

place-before=0 قانون را بالای فهرست می‌گذارد. همین روش را برای جدا کردن شبکهٔ دوربین‌ها از بقیهٔ شبکه هم به کار ببرید.

۸. به‌روزرسانی

بیشتر حمله‌های گسترده به میکروتیک از آسیب‌پذیری‌هایی بوده که مدت‌ها قبل در نسخهٔ جدید برطرف شده بود.

/system package update check-for-updates
/system package update install

شاخهٔ stable برای روترهای عملیاتی مناسب است. قبل از به‌روزرسانی، نسخهٔ پشتیبان بگیرید.

چک‌لیست خلاصه

  • فایروال input با قانون drop در انتها
  • فایروال forward که اتصال جدید از WAN را فقط برای Port Forwardها باز می‌گذارد
  • Telnet، FTP، API و وب خاموش؛ Winbox و SSH محدود به شبکهٔ داخلی
  • Neighbor Discovery و MAC Server فقط روی LAN
  • کاربر admin غیرفعال، رمز قوی و کاربر جدا برای هر نفر
  • شبکهٔ مهمان و دوربین جدا از شبکهٔ داخلی
  • RouterOS و فریم‌ور به‌روز و نسخهٔ پشتیبان منظم

جمع‌بندی

امنیت میکروتیک با چند قانون ساده شروع می‌شود: به روتر فقط از داخل، به شبکه از بیرون فقط با Port Forward مشخص، سرویس‌های اضافه خاموش و RouterOS به‌روز. برای دسترسی امن از بیرون، به جای باز کردن پورت، مقالهٔ دسترسی به دستگاه‌ها از خارج شبکه را بخوانید.

  • MikroTik
  • Firewall
  • امنیت شبکه
  • Winbox
  • RouterOS