در توسینسو تدریس کنید

و

با دانش خود درآمد کسب کنید

آموزش فایروال PF در OpenBSD قسمت 5 : قواعد Rule نویسی

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

علاوه بر این دو دیدگاه رول پیش فرضی همه وجود دارد که در صورتی که بسته های ارسالی و یا دریافتی با هیچ یک از رولهای شما سازگاری و انطباق نداشته باشد رول پیش‌فرض برروی آن اعمال خواهد شد.فایروال pf در دو لایه‌های ۳ و ۴ از مدل TCPIP کار می‌کند و این امر بدان معناست که در لایه سوم توان محدود سازی براساس آدرسهای ip در دو ورژن ۴ و ۶ را دارد و در لایه ۴ از مدل TCPIP توان نظارت و یا مسدود سازی بر اساس TCP,UDP,ICMP و سایر پروتکلهای موجود در این لایه را دارند و می‌توانند بر اساس آدرسها و شماره پورتهای مبدأ و مقصد بسته های موجود را بررسی کنند و برای رد کردن و یا مسدود کردن آن‌ها تصمیم گیری کنند.

قوانین رولهای فیلترینگ بر اساس ترتیب عددی ترتیب بندی می‌شوند و رولها از بالا به پایین با هر بسته های که دریافت می‌شود تطبیق داده می‌شود و در صورتی که بسته با پارامترهای رول مورد نظر مطابقت داشته باشد عمل فیلتر کردن برروی آن اعمال می شود.در این میان اگر شما از رولی با پارامتر quick استفاده کنید بسته مورد نظر شما با همه رولها چک نشده و سرعت بیشتری در اعمال عمل فیلترینگ اتفاق می افتد.هرفایروالی دارای مجموعه قواعدی در نوشتار است که به اصطلاح به آن rule syntax می‌گویند که در حالت کلی به صورت شکل زیر است:

action [direction] [log] [quick] [on interface] [af] [proto protocol]
       [from src_addr [port src_port]] [to dst_addr [port dst_port]]
       [flags tcp_flags] [state]

این بخش با عملی که قرار است برروی بسته اعمال شود آغاز می شود. همانطوری که در ابتدا بیان شده این بخش شامل دو حالت pass و block است .در بخش دوم باید در قسمت direction مسیر وارد شدن و یا خارج شدن بسته به کارت شبکه را مشخص کنید اگر شما قصد دارید که بسته هایی که به کارت شبکه شما وارد می‌شوند را مورد بازرسی و فیلتر کردن قرار دهید از in و اگر قصد دارید که بسته هایی که از کارت شبکه شما خارج می‌شود را مورد بررسی قرار دهید از گزینه out در این بخش استفاده کنید.

در برخی از موارد شاید شما نیاز داشته باشید که یک گزارش یا همان log از وضعیت رول نوشته شده داشته باشید که البته این بخش شما رو در عیب یابی در فایروال بسیار کمک خواهد کرد، برای فعال کردن این بخش شما می تونید از گزینه Log در هر رولی که قصد گرفتن Log را از آن دارید را اضافه کنید.در بالا به این نکته اشاره شد که بسته ها به ترتیب از بالا به پایین برروی رولها اعمال می شوند و در صورتی که در یک رول از گزینه quick استفاده شده باشه رول مربوطه به سرعت برروی بسته اعمال شده و سایر رولها دیگر چک نخواهند شد، شما در این بخش می توانید از این کلمه کلیدی در نوشتن رولهای خودتون استفاده کنید.

در بخش بعدی شما باید کارت شبکه دستگاه خود را که قصد دارید مسیر بسته های ورودی به کارت شبکه و یا خروجی از کارت شبکه رول برروی آنها اعمال شود را مشخص کنید، شما در نوشتن یک رول باید نام کارت شبکه را به درستی ذکر کنید که این نام را می توانید از خروجی فرمان ifconfig بدست آورید.در بخش fa در این رول شما باید address family یا همان نوع ورژن 4 یا ورژن 6 از سرویس لایه 3 را مشخص کنید برای رولهایی که شما در آدرس ورژن 4 انها می نویسید از inet و برای رولهایی که شما در آدرس ورژن 6 آنها می نویسید از inet6 استفاده کنید.در بخش proto یا همان protocol شما می توانید نوع پروتکلی که قصد اعمال محدودیت با استفاده از رول را دارید را مشخص کنید برای مثال می توانید در این بخش از گزینه های TCP,UDP و یا ICMP استفاده کنید.


دو بخش به نامهای srcaddr, dstaddr در خط رول پیش فرض وجود دارد که بخش srcaddr آدرس مبدا بسته و بخش dstaddr به معنی آدرس مقصد بسته است که البته این قسمت نسبی بود و به کارت شبکه شما و مسیر ورود بسته به کارت شبکه شما خیلی وابسته است.بخش srcport, dstport هم مثل بخش قبلی است و شما با استفاده از آن می توانید شماره لایه 4 از مدل TCP/IP را مشخص کنید، در این بخش است که شما با استفاده از آن می توانید دسترسی به یک پورت خاص برروی شبکه و یا سرور خود را مسدود کنید و یا در بین دسترسیهای مسدود شده همه ترافیک ها یک دسترسی به یک پورت خاص را باز کنید.

بخش tcp_flags

یکی از بخشهای بسیار خوب و جذاب که شما می توانید برروی آن مدیریت داشته باشید flag ها موجود برروی بسته های TCP است را مدیریت کنید که این امر با استفاده از این بخش استفاده می شود.

مثالی از رول های نوشته شده در pf

# Pass traffic in on dc0 from the local network, 192.168.0.0/24, to the OpenBSD
# machine's IP address 192.168.0.1. Also, pass the return traffic out on dc0.
pass in  on dc0 from 192.168.0.0/24 to 192.168.0.1
pass out on dc0 from 192.168.0.1    to 192.168.0.0/24

# Pass TCP traffic in to the web server running on the OpenBSD machine.
pass in on dc0 proto tcp from any to 192.168.010 port www

همانطوری که در مثال بالا مشاهده می کنید سه رول در این بخش وجود دارد که دسترسی آزاد به سیستم شما را تعیین می کنید(خطوطی که با # شروع می شوند به معنی توضیحات هستند) در دو رول اول دسترسی وارد شده و خارج شده ترافیک به یک کارت شبکه خاص برروی سیستم برای یک شبکه خاص ایجاد شده و بسته های این شبکه در دو مسیر ورودی و خروجی می توانند از فایروال عبور کند و در رول سوم از این بخش ترافیک وارد شده به کارت شبکه دیگری از نوع TCP به پورت وب سرور 192.168.0.10 داده شده است.

رول پیش فرض block

همانطوری که در ابتدا این مقاله به آن اشاره شد، رفتار پیش فرض شما در فایروال نوع سیاست شما را تعیین می کنید در این راستا برای محدود سازی همه ترافیک ها و اعمال کردن سیاست بسته بودن ترافیک ها می توانید از رول زیر استفاده کنید:

block all	
در مثال زیر هم با روش مسدود کردن فقط پورت معروف ssh را مشاهده می کنید.
block in on egress proto tcp to port ssh
pass  in all	

#فایروال_pfsense #فایروال_pf
عنوان
1 آموزش فایروال PF در OpenBSD قسمت 1 : معرفی و مقدمه دوره رایگان
2 آموزش فایروال PF در OpenBSD قسمت 2 : فعال کردن pfctl و فایل تنظیم رایگان
3 آموزش فایروال PF در OpenBSD قسمت 3 : list ها و macro ها رایگان
4 آموزش فایروال PF در OpenBSD قسمت 4 : آموزش کار با جدول ها رایگان
5 آموزش فایروال PF در OpenBSD قسمت 5 : قواعد Rule نویسی رایگان
زمان و قیمت کل 0″ 0
0 نظر

هیچ نظری ارسال نشده است! اولین نظر برای این مطلب را شما ارسال کنید...

نظر شما
برای ارسال نظر باید وارد شوید.
از سرتاسر توسینسو
تنظیمات حریم خصوصی
تائید صرفنظر
×

تو می تونی بهترین نتیجه رو تضمینی با بهترین های ایران بدست بیاری ، پس مقایسه کن و بعد خرید کن : فقط توی جشنواره تابستانه می تونی امروز ارزونتر از فردا خرید کنی ....