در بسیاری از شبکه‌های سازمانی، تمام ارتباطات کاربران، سرورها و سرویس‌ها از فایروال عبور می‌کنند. اما فایروال چگونه تشخیص می‌دهد کدام ارتباط مجاز است و کدام باید مسدود شود؟

برای مثال، ممکن است بخواهید کاربران واحد مالی فقط به سرور حسابداری دسترسی داشته باشند، کاربران عادی تنها از اینترنت استفاده کنند یا فقط مدیران شبکه بتوانند از طریق VPN به تجهیزات داخلی متصل شوند. پیاده‌سازی چنین سیاست‌هایی بدون وجود مکانیزمی برای کنترل ترافیک امکان‌پذیر نیست.

در فایروال فورتی گیت این وظیفه بر عهده Firewall Policy است. در واقع، تمامی ارتباطات شبکه بر اساس قوانینی که مدیر شبکه تعریف می‌کند بررسی می‌شوند و تنها ترافیکی که با این قوانین مطابقت داشته باشد اجازه عبور خواهد داشت.

 

Firewall Policy در فورتی گیت چیست؟

Firewall Policy در فورتی گیت مجموعه‌ای از قوانین امنیتی است که مشخص می‌کند هر ارتباط شبکه‌ای تحت چه شرایطی مجاز یا غیرمجاز باشد. این قوانین بر اساس پارامترهایی مانند مبدأ (Source)، مقصد (Destination)، سرویس (Service)، زمان دسترسی (Schedule) و عملیات موردنظر (Action) تعریف می‌شوند.

هر زمان یک بسته اطلاعاتی وارد FortiGate می‌شود، فایروال آن را با Firewall Policyهای موجود مقایسه می‌کند. اگر بسته با یکی از قوانین مطابقت داشته باشد، همان Policy روی آن اعمال می‌شود؛ در غیر این صورت، ترافیک به‌صورت پیش‌فرض اجازه عبور نخواهد داشت.

در واقع، Firewall Policy مانند مجموعه‌ای از قوانین ورود و خروج یک ساختمان عمل می‌کند. این قوانین مشخص می‌کنند چه کسی، در چه زمانی و به کدام بخش اجازه دسترسی داشته باشد. در FortiGate نیز دقیقاً همین منطق برای مدیریت ترافیک شبکه اجرا می‌شود.

 

اجزای Firewall Policy در فورتی گیت

هر Firewall Policy از چند بخش اصلی تشکیل شده است که هر کدام نقش مشخصی در کنترل ترافیک شبکه دارند. آشنایی با این اجزا باعث می‌شود هنگام طراحی یا عیب‌یابی پالیسی ها، عملکرد FortiGate را بهتر درک کنید.

 

  • Source (مبدأ)

قسمت Source مشخص می‌کند ترافیک از کدام کاربران، دستگاه‌ها یا شبکه‌ها آغاز شده است.

مبدأ می‌تواند آدرس IP، Subnet، Address Object، یک گروه از آدرس‌ها (Address Group) یا حتی کاربران احراز هویت‌شده باشد.

برای مثال، اگر فقط بخواهید کاربران شبکه داخلی 192.168.10.0/24 به اینترنت دسترسی داشته باشند، همین شبکه را در قسمت Source انتخاب می‌کنید.

 

  • Destination (مقصد)

قسمت Destination مشخص می‌کند ارتباط به کدام مقصد ارسال می‌شود.

این مقصد می‌تواند یک سرور داخلی، یک شبکه، یک آدرس اینترنتی، یک Virtual IP (VIP) یا حتی گزینه All باشد.

برای نمونه، اگر کاربران فقط باید به سرور حسابداری با آدرس 192.168.20.10 متصل شوند، همین سرور به‌عنوان Destination انتخاب می‌شود.

 

  • Service (سرویس)

در قسمت Service مشخص می‌شود کدام پروتکل یا سرویس اجازه عبور داشته باشد.

FortiGate صدها سرویس آماده مانند موارد زیر را در اختیار مدیر شبکه قرار می‌دهد:

  • HTTP
  • HTTPS
  • SSH
  • DNS
  • FTP
  • SMTP
  • RDP

همچنین در صورت نیاز می‌توان سرویس‌های سفارشی (Custom Service) نیز ایجاد کرد.

مثلاً، اگر فقط بخواهید کاربران از مرورگر وب استفاده کنند، می‌توانید تنها سرویس‌های HTTP و HTTPS را مجاز کنید.

 

  • Schedule (زمان‌بندی)

قسمت Schedule  تعیین می‌کند این  قانون امنیتی در چه زمانی فعال باشد.

در بسیاری از سازمان‌ها Policyها همیشه فعال هستند و گزینه Always انتخاب می‌شود؛ اما گاهی لازم است دسترسی تنها در ساعات اداری یا روزهای مشخصی از هفته برقرار باشد.

به طور مثال، ممکن است دسترسی کاربران پیمانکار فقط از ساعت ۸ صبح تا ۵ عصر مجاز باشد.

 

  • Action (عملیات)

قسمت Action مشخص می‌کند پس از تطابق ترافیک با این قانون فایروال (Policy) چه تصمیمی گرفته شود.

دو حالت اصلی وجود دارد:

  • Accept: اجازه عبور ترافیک
  • Deny: مسدود کردن ترافیک

در اکثر سناریوها از گزینه Accept استفاده می‌شود و برای جلوگیری از برخی ارتباطات، Policyهای مجزای Deny تعریف می‌شوند.

 

  • NAT

در صورت نیاز، می‌توان NAT را مستقیماً در پالیسی فایروال فعال کرد.

برای مثال، زمانی که کاربران شبکه داخلی قصد دسترسی به اینترنت را دارند، معمولاً گزینه Use Outgoing Interface Address فعال می‌شود تا آدرس IP خصوصی آن‌ها به IP عمومی ترجمه شود.

اگر با نحوه عملکرد NAT آشنا نیستید، پیشنهاد می‌کنیم مقاله NAT در فورتی گیت را نیز مطالعه کنید.

 

  • Security Profiles

یکی از مهم‌ترین قابلیت‌های Firewall Policy، امکان اعمال Security Profile روی ترافیک مجاز است.

پس از تطابق ترافیک با Firewall Policy و صدور اجازه عبور، می‌توان Security Profileها را روی همان ارتباط اعمال کرد:

برای مثال، ممکن است کاربران اجازه دسترسی به اینترنت داشته باشند، اما هم‌زمان تمام ترافیک آن‌ها توسط IPS بررسی شود و دسترسی به وب‌سایت‌های غیرمجاز نیز توسط Web Filtering محدود گردد.

 

ترتیب بررسی قوانین فایروال در فورتی گیت (Top-Down Processing)

یکی از مهم‌ترین نکاتی که هر مدیر شبکه باید بداند، نحوه بررسی Policyها در فایروال FortiGate است.

برخلاف تصور بسیاری از افراد، فایروال تمام Policyها را بررسی نمی‌کند تا بهترین گزینه را انتخاب کند. این فایروال قوانین را از بالا به پایین بررسی می‌کند و به همین دلیل، اولین قانون منطبق (First Match) همیشه برنده خواهد بود.

به همین دلیل، ترتیب قرارگیری Policyها اهمیت زیادی دارد.

برای مثال فرض کنید دو قانون امنیتی زیر وجود داشته باشد:

Policy 1

Source: LAN

Destination: Internet

Service: HTTPS

Action: Accept

———————————-

Policy 2

Source: LAN

Destination: Internet

Service: ALL

Action: Accept

اگر کاربری بخواهد با استفاده از HTTPS به اینترنت متصل شود، فایروال ابتدا Policy شماره ۱ را بررسی می‌کند. از آنجایی که تمام شرایط با این قانون مطابقت دارد، همان Policy اجرا می‌شود و دیگر Policy شماره ۲ بررسی نخواهد شد.

به همین دلیل، همیشه باید Policyهای اختصاصی‌تر در بالای لیست و Policyهای عمومی‌تر در پایین قرار گیرند؛ در غیر این صورت ممکن است یک قانون کلی، مانع اجرای قوانین دقیق‌تر شود.

 

بهترین روش برای مرتب‌سازی قوانین

  1. قوانین اختصاصی‌تر (Specific Rules)
  2. قوانین مربوط به سرورها و سرویس‌های حساس
  3. قوانین مربوط به کاربران یا گروه‌های خاص
  4. قوانین عمومی
  5. قوانین مسدودسازی (Deny Rules) در صورت نیاز

این ترتیب باعث می‌شود ابتدا دقیق‌ترین قوانین بررسی شوند و در نهایت، قوانین عمومی روی سایر ترافیک‌ها اعمال شوند.

 

پردازش Packet در FortiGate

زمانی که یک بسته اطلاعاتی وارد FortiGate می‌شود، فایروال مراحل زیر را به‌ترتیب انجام می‌دهد:

Client

ورود Packet به فورتی گیت

بررسی جدول Routing

جستجوی Firewall Policy

بررسی Security Profileها

اعمال NAT (در صورت نیاز)

ارسال Packet از Interface خروجی

 

در این فرآیند:

  • ابتدا مسیر مناسب با استفاده از جدول Routing مشخص می‌شود.
  • سپس پالیسی در فورتی گیت تعیین می‌کند ارتباط مجاز است یا خیر.
  • در صورت مجاز بودن، قابلیت‌های امنیتی مانند IPS یا Web Filtering اجرا می‌شوند.
  • اگر NAT فعال باشد، ترجمه آدرس نیز انجام می‌شود.
  • در نهایت Packet از رابط خروجی مناسب به مقصد ارسال خواهد شد.

نکته: NAT و Security Profile تنها زمانی اجرا می‌شوند که ارتباط توسط Firewall Policy مجاز شناخته شود.

 

بهترین روش‌ها (Best Practices) در طراحی Firewall Policy در FortiGate

  • تا حد امکان از Any استفاده نکنید

استفاده از Any برای Source، Destination یا Service اگرچه پیاده‌سازی را ساده‌تر می‌کند، اما سطح دسترسی بسیار گسترده‌ای ایجاد خواهد کرد. بهتر است فقط کاربران، شبکه‌ها و سرویس‌هایی را مجاز کنید که واقعاً به آن‌ها نیاز دارید. این کار علاوه بر افزایش امنیت، مدیریت قوانین را نیز ساده‌تر می‌کند.

 

  • قوانین اختصاصی را بالاتر از قوانین عمومی قرار دهید

از آنجا که FortiGate قوانین را به‌صورت Top-Down بررسی می‌کند، ابتدا باید Policyهای اختصاصی و محدودتر قرار گیرند و سپس قوانین عمومی‌تر. در غیر این صورت ممکن است یک قانون کلی قبل از قانون موردنظر اجرا شود و نتیجه دلخواه حاصل نشود.

 

  • به جای IP مستقیم از Address Object استفاده کنید

به‌جای وارد کردن مستقیم آدرس‌های IP در هر Firewall Policy، بهتر است از Address Object و Address Group استفاده کنید. این روش باعث می‌شود در صورت تغییر آدرس یک سرور یا شبکه، تنها کافی باشد همان Object را ویرایش کنید و نیازی به تغییر تمام Policyها نباشد.

مثال:

فرض کنید سرور حسابداری را با نام Accounting_Server و آدرس 192.168.10.20 به‌عنوان یک Address Object تعریف کرده‌اید. اگر در آینده آدرس این سرور به 192.168.10.50 تغییر کند، کافی است فقط همان Object را ویرایش کنید؛ تمام Firewall Policyهایی که از Accounting_Server استفاده می‌کنند، به‌صورت خودکار از آدرس جدید استفاده خواهند کرد.

 

  • فقط سرویس‌های موردنیاز را مجاز کنید

بهتر است به‌جای انتخاب Service = ALL، فقط سرویس‌هایی مانند HTTPS، SSH یا RDP که واقعاً موردنیاز هستند را انتخاب کنید. محدود کردن سرویس‌های مجاز، سطح حمله (Attack Surface) را کاهش داده و امنیت شبکه را افزایش می‌دهد.

 

  • برای Policyهای مهم ثبت رویداد (Log) را فعال کنید

فعال بودن Log روی Firewall Policyهای مهم، فرآیند مانیتورینگ و عیب‌یابی را بسیار ساده‌تر می‌کند. هنگام بررسی مشکلات ارتباطی یا تحلیل رخدادهای امنیتی، لاگ‌ها یکی از مهم‌ترین منابع اطلاعاتی مدیر شبکه خواهند بود.

 

  • Security Profileها را متناسب با نوع ترافیک اعمال کنید

اجازه عبور ترافیک به‌تنهایی برای تأمین امنیت کافی نیست. در صورت نیاز، قابلیت‌هایی مانند IPS، Web Filtering، Application Control، Antivirus و SSL Inspection را روی همان Firewall Policy فعال کنید تا ترافیک مجاز نیز از نظر تهدیدات امنیتی بررسی شود.

 

  • Firewall Policyهای بلااستفاده را حذف یا غیرفعال کنید

با گذشت زمان ممکن است برخی قوانین دیگر کاربردی نداشته باشند. باقی ماندن این Policyها علاوه بر پیچیده‌تر شدن مدیریت، احتمال ایجاد دسترسی‌های ناخواسته را نیز افزایش می‌دهد. بازبینی دوره‌ای و حذف قوانین بلااستفاده یکی از اصول مهم مدیریت FortiGate است.