رفتن به محتوا
بازگشت به وبلاگ
میکروتیک

مبانی فایروال MikroTik: زنجیره‌های Input، Forward و Output

زنجیره‌های فایروال MikroTik را بشناسید، ببینید ترافیک چطور از آن‌ها عبور می‌کند و اولین قوانین فایروال را بنویسید.

اسفند ۱۴۰۴
۱۱ دقیقه مطالعه

اصول فایروال در میکروتیک: input، forward و output

فایروال یکی از مهم‌ترین ویژگی‌های RouterOS است. با آن می‌توانید کنترل کنید چه ترافیکی از روتر عبور کند و چه چیزی بلاک شود.

چطور بسته‌ها در RouterOS پردازش می‌شوند؟

سه مسیر برای یک بسته در RouterOS وجود دارد:

زنجیره input

input بسته‌هایی را مدیریت می‌کند که مقصدشان خود روتر است:
  • اتصال SSH به روتر (پورت ۲۲)
  • اتصال Winbox (پورت ۸۲۹۱)
  • Ping به آدرس IP روتر
  • درخواست‌های DHCP
قانون: input = ترافیک که به روتر می‌رود، نه از آن عبور می‌کند.

زنجیره forward

forward بسته‌هایی را مدیریت می‌کند که از روتر عبور می‌کنند:
  • دستگاه‌های LAN که به اینترنت دسترسی دارند
  • ترافیک بین VLAN‌ها
قانون: forward = ترافیک که از روتر عبور می‌کند.

زنجیره output

output بسته‌هایی را مدیریت می‌کند که خود روتر ایجاد می‌کند:
  • روتر Ping ارسال می‌کند
  • روتر DNS query ارسال می‌کند
قانون: output = ترافیک از روتر. مبتدیان معمولاً آن را تغییر نمی‌دهند.

فلسفه default-deny

یک روتر امن از رویکرد default-deny استفاده می‌کند:

۱. آنچه می‌خواهید مجاز باشد را صریحاً مجاز کنید

۲. در پایان همه چیز دیگر را drop کنید

Connection Tracking

RouterOS وضعیت اتصالات را ردیابی می‌کند. هر بسته به یکی از این حالت‌ها تعلق دارد:

  • established — بخشی از اتصال موجود
  • related — مرتبط با اتصال موجود
  • new — شروع اتصال جدید
  • invalid — با هیچ حالت شناخته‌شده‌ای مطابقت ندارد

ساخت فایروال پایه: زنجیره input

TEXT
# پذیرش اتصالات موجود
/ip firewall filter add chain=input connection-state=established,related action=accept comment=accept-established-related

# Drop بسته‌های نامعتبر
/ip firewall filter add chain=input connection-state=invalid action=drop comment=drop-invalid

# پذیرش ICMP (ping)
/ip firewall filter add chain=input protocol=icmp action=accept comment=accept-icmp

# پذیرش ترافیک مدیریتی از LAN
/ip firewall filter add chain=input in-interface=bridge action=accept comment=accept-from-lan

# Drop همه چیز دیگر
/ip firewall filter add chain=input action=drop comment=drop-all-else

ساخت فایروال پایه: زنجیره forward

TEXT
# پذیرش اتصالات موجود
/ip firewall filter add chain=forward connection-state=established,related action=accept comment=accept-established-related

# Drop بسته‌های نامعتبر
/ip firewall filter add chain=forward connection-state=invalid action=drop comment=drop-invalid

# پذیرش ترافیک از LAN به WAN
/ip firewall filter add chain=forward in-interface=bridge out-interface=ether1 action=accept comment=lan-to-wan

# Drop همه چیز دیگر
/ip firewall filter add chain=forward action=drop comment=drop-all-else

مشاهده قوانین فایروال

TEXT
/ip firewall filter print

با شمارنده hits:

TEXT
/ip firewall filter print stats

مدیریت قوانین

TEXT
# جابجایی قانون
/ip firewall filter move 5 destination=0

# غیرفعال کردن موقت
/ip firewall filter disable 3
/ip firewall filter enable 3

# حذف
/ip firewall filter remove 3

ثبت گزارش ترافیک

TEXT
/ip firewall filter add chain=input protocol=tcp dst-port=22 action=log log-prefix=SSH-ATTEMPT
/log print

جمع‌بندی

زنجیره‌های فایروال در RouterOS:

  • input — ترافیک به روتر
  • forward — ترافیک از روتر عبور می‌کند
  • output — ترافیک از روتر

همیشه از الگوی default-deny استفاده کنید: آنچه نیاز دارید را مجاز کنید، بقیه را در پایان drop کنید.