نکاتی در خصوص قوانین (Rules) دیواره آتش PfSense

1-در محیط مدیریت نرم افزار PfSense و در صفحه نگارش قوانین دیواره آتش که از مسیر Firewall > Rules قابل دسترسی است به ازای هر رابط (Interface) فعال یک برگه (Tab) جداگانه وجود دارد .بنابراین برگه های WAN ، LAN و در صورت وجود رابط های OPTx فعال ، برگه هایی با نامهای OPT1 ، OPT2 و ... قابل مشاهده هستند. افزون براین به ازای هر نوع VPN فعال شامل IPsec ، OpenVPN و PPTP نیز یک برگه جداگانه وجود خواهد داشت. برگه دیگری که در این صفحه وجود دارد برگه Floating است و قوانینی که در این برگه توسط کاربر ایجاد می شوند Floating Rules نامیده می شوند که شامل تنظیمات متفاوت و پیشرفته تری نسبت به قواعد ساخته شده در سایر برگه ها هستند. همچنین در صورت نیاز به تعریفInterface Groups به ازای هر Interface Groups ساخته شده یک برگه جداگانه و هم نام با آن قابل مشاهده است.

دوره های شبکه، برنامه نویسی، مجازی سازی، امنیت، نفوذ و ... با برترین های ایران
برگه های موجود در صفحه ساخت قوانین دیواره آتش

برگه های موجود در صفحه ساخت قوانین دیواره آتش

2-قوانین (Rules) تعریف شده در هریک از برگه های WAN ، LAN ، OPTx و برگه های Interface Groups تنها بر ترافیک ورودی به رابط (Interface) مربوطه اعمال می شوند به بیان دیگر قواعد تعریف شده در این برگه ها ترافیک رسیده به رابط را تنها در جهت ورودی (Inbound) به رابط پردازش خواهند کرد. به عبارت دیگر قوانین ساخته شده در این برگه ها امکان پردازش ترافیک خروجی (OutBound) از رابط را نخواهند داشت. همچنین قواعد تعریف شده در این برگه ها به ترتیب از بالا به پایین پردازش خواهند شد. پردازش در نخستین قانونی که شرایط تعیین شده در آن با ویژگی های ترافیک ورودی انطباق داشته باشد متوقف شده و اقدام تعیین شده در قانون (Rule )که می تواند شامل یکی از گزینه های Pass ،Block و یا Reject باشد بر ترافیک اعمال می گردد.

اقدام Pass به ترافیک ورودی به رابط اجازه عبور به سمت مقصد را می دهد اما اقدام Block و Reject بسته های ورودی به رابط را حذف می کنند با این تفاوت که اقدام Reject افزون بر دورانداختن بسته ها ، حذف شدن آنها را نیز به فرستنده اطلاع می دهد ، این کار به هنگام حذف بسته های UDP با استفاده از پیام port unreachable پروتکل ICMP و در زمان حذف بسته های TCP با ارسال یک بسته TCP RST انجام می شود..

چنانچه ترافیک رسیده به رابطها با هیچیک از قوانین (Rules) تعریف شده توسط کاربر تطابق نداشته باشد و یا برای اجازه عبور یک ترافیک خاص ازفایروال قانون صریحی توسط کاربر تعیین نشده باشد ، ترافیک مسدود شده و اجازه عبور از فایروال را نخواهد داشت. به بیان دیگر در این دو حالت قانون پیش فرض PfSense که ((قانون انسداد (Deny Rule) )) نامیده می شود بر ترافیک اعمال شده و ترافیک Block می گردد . به یاد داشته باشید که اقدام پیش فرض قانون Deny Rule اقدام Block است بنابراین قانون یاد شده بسته ها را درسکوت خبری و بدون اطلاع به فرستنده حذف خواهد کرد

وب سایت توسینسو

3-قوانین تعریف شده در برگه Floating که Floating Rules نامیده می شوند نسبت به قوانین تعریف شده در سایر برگه ها (Tabs) از قابلیتهای بیشتری برخوردارند که برخی از مهمترین آنها عبارتند از :

1- PfSense به هنگام پردازش قوانین تعریف شده توسط کاربر بالاترین اولویت پردازش را برای قواعد تعریف شده در برگه Floating در نظر می گیرد به بیان ساده تر ابتدا قوانین موجود در این برگه پردازش شده و پس از آن قواعد تعریف شده در هر یک از برگه های interface group و برگه OpenVPN و در نهایت قواعد تعریف شده در برگه های مربوط به هر رابط شامل WAN ، LAN ، OPTx و ... مورد پردازش قرار خواهند گرفت.به بیان ساده تر قوانین تعریف شده توسط کاربر به ترتیب زیر پردازش می شوند :

1- قوانین تعریف شده در برگه floating

2- قوانین تعریف شده در هر یک از برگه های interface group و برگه OpenVPN

3- قوانین تعریف شده در برگه های مربوط به هر رابط شامل WAN ، LAN ، OPTx و ...

2- بر خلاف قوانین موجود در برگه های دیگر که تنها بر ترافیک ورودی (in) به رابط اعمال می شوند در برگه Floating می توان قوانینی تعریف کرد که افزون بر ترافیک ورودی به رابط (in ) ترافیک خروجی از رابط (out) را نیز مورد پردازش قرار دهند. به بیان ساده تر در هنگام نگارش قوانین در این برگه می توان جهت ترافیک نسبت به رابط (in یا out) را نیز مشخص کرد.

3- در هر قانون ساخته شده در این برگه ، امکان انتخاب هر رابط (Interface) دلخواه و یا انتخاب همزمان چندین رابط وجود دارد.

4- ترافیک ایجاد شده از مبدا خود فایروال را نیز می توان پردازش کرد برای این منظور کافی است به هنگام ایجاد قانون در بخش Source گزینه This Firewall (Selef) را انتخاب کنید.

5- برخلاف رویکرد موجود در برگه های دیگر که مبتنی بر الگوی (( اولین انطباق برنده است)) بوده و با پردازش قوانین ایجاد شده از ابتدا به انتها ، با رسیدن به اولین قانونی که با ترافیک رسیده به رابط منطبق است ، پردازش را متوقف و اقدام تعریف شده در قانون را اعمال می کنند ، رویکرد پیش فرض در برگه Floating بکارگیری الگوی (( آخرین انطباق برنده است)) می باشد.

برای تغییر این رفتار پیش فرض در پردازش قوانین این برگه ، کافی است تا هنگام ساخت قانون در برگه Floating حالت Quick را با نشان دار کردن کردن گزینه Apply the action immediately on match فعال کنید .با فعال کردن حالت Quick رویکرد پردازش در قانون ایجاد شده به (( اولین انطباق برنده است)) تغییر می یابد.

برای درک بهتر این مطلب فرض کنید که کاربر در برگه Floating اقدام به ساخت قانونی کرده باشد که پیام های Echo Request پروتکل ICMP رسیده به رابط LAN را Block کند ، یعنی اجازه Ping کردن سایتهای اینترنتی رابه کاربران شبکه داخلی ندهد ، حال چنانچه حالت Quick در این قانون فعال نباشد و کاربر در قانون دیگری که در برگه LAN ساخته اجازه Ping کردن سایتهای اینترنتی را به کاربران شبکه داخلی داده باشد با توجه به ترتیب پردازش قوانین ایجاد شده توسط کاربر ، بدیهی است که با رسیدن ترافیک Ping به رابط LAN اولین انطباق ، با قانون ساخته شده در برگه Floating و دومین انطباق با قانون تعریف شده در برگه LAN رخ خواهد داد.

ولی چون گزینه Quick در این قانون فعال نشده است ، تصمیم گیری بر مبنای رویکرد ((آخرین انطباق برنده است )) صورت گرفته و در نتیجه قانون ساخته شده در برگه LAN برنده شده واقدام تعریف شده در آن (Pass) بر ترافیک اعمال شده و کاربران شبکه داخلی اجازه ارسال بسته های Echo Request پروتکل ICMP به اینترنت را خواهند داشت. یعنی می توانند سایت های اینترنتی را Ping کنند.

حال چنانچه کاربر حالت Quick را در قانون تعریف شده در برگه Floating فعال کرده باشد ، تصمیم گیری بر مبنای رویکرد (( اولین انطباق برنده است )) صورت می پذیرد بنا براین با توجه به ترتیب پردازش قوانین ، اولین انطباق در قانون تعریف شده در برگه Floating رخ خواهد داد در نتیجه قانون ساخته شده در برگه Floating برنده شده و اقدام تعریف شده در آن (Block) برترافیک رسیده اعمال می گردد و کاربران شبکه داخلی اجازه ارسال بسته های Echo Request پروتکل ICMP به اینترنت را نخواهند داشت. یعنی نمی توانند سایتهای اینترنتی را Ping کنند.

4- ترتیب پردازش قوانین (Rules) در دیواره آتش PfSense به صورت زیر است :

  • 1-Outbound NAT rules
  • 2-(Inbound NAT rules such as Port Forwards (including rdr pass and UPnP
  • 3- (NAT rules for the Load Balancing daemon (relayd
  • 4-Rules dynamically received from RADIUS for OpenVPN and IPsec clients
  • 5-(Internal automatic rules (pass and block for various items like lockout, snort, DHCP, et

6-قواعد تعریف شده توسط کاربر که به ترتیب زیر پردازش می شوند :

  • 1-قواعد تعریف شده در برگه floating
  • 2-قواعد تعریف شده در هر یک از برگه های interface group و برگه OpenVPN
  • 3- قواعد تعریف شده در برگه های مربوط به هر رابط شامل WAN ، LAN ، OPTx و ...

7-Automatic VPN rules


نظرات