Loading…

جزیره فایروال و تجهیزات امنیتی

ارسال کننده: mabedini
سلام دوستان مدیر سایت mabedini.ir هستم. از سال ۱۳۸۱ با سیستم عامل های مبتنی بر BSD کار کردم. مقالات و فیلم های آموزشی در زمینه BSD تهیه کردم. یکی از سیستم عامل های مورد علاقه من OpenBSD است. در حال حاضر دوره هایی برروی انواع فایروالهای زیر رو در سایت دارم ** دوره آموزش pfsense به صورت مقدماتی و نصب انواع بسته های کاربردی. ** دوره آموزش فایروال IPFW در FreeBSD ** دوره آموزش فایروال ipfire ** دوره جدید فایروال OPNsense
ارسال پیام خصوصی
امتیازات این مطلب
نکته: بخش سوم :کار با جدوال در pf
سلام به دوستان عزیز ITpro با بخش بعدی از سری آموزشهای فایروال PF در خدمت شما دوستان هستم در این بخش قصد داریم که در خصوص جداول در فایل پیکربندی صبحت می کنیم.

از جداول برای ذخیره کردن گروهی از آدرسهای IPv4 و IPv6 در pf استفاده می شود. به این نکته توجه کنید که سرعت جستجو در جدول خیلی از سرعت جستجو در لیست ها بیشتر است. به این دلیل است که برای جستجو در لیستهای بزرگ از آدرسهای IP از جدول استفاده میشود و نه لیست. مصارف استفاده از جدول به صورت زیر است :

  • ذخیره سازی آدرسها مبداء و مقصد در رولها
  • برای نگهداری مقادیر nat-to و rdr-to در رولها
  • آدرسهای مقصد در رولهای حاوی route-toو reply-to و dup-to

برای ایجاد کردن جدوال باید از فایل rc.conf استفاده کنید و برای مدیریت کردن آنها از فرمان pfctl استفاده کنید.

ایجاد کردن جدول

برای ایجاد کردن یک جدول در فایل pf.conf باید از لغت کلیدی table استفاده کنید، هر جدول شامل دو ویژگی است :

مقدار const:
زمانی که این مقدار را در جدول استفاده کنید غیر قابل تغییر می شود و فقط در بار اول جدول قابل تغییر است. اگر از این ویژگی در جدول استفاده کنید برای محدود کردن فرمان pfctl باید securelevel سیستم خودتون رو افزایش دهید.

مقدار persist :
این عمل باعث میشه که هسته سیستم عامل جدولی را که هیچ رولی به آن منصوب هم نشده را در حافظه خود نگهدارید، بدون این ویژگی، هسته به طور خودکار جدولهای که آخرین قوانین مربوط به آن فلاشینگ شده است را حذف خواهد کرد.

در زیر مثالی در مورد روش ایجاد و استفاده از جدول را مشاهده می کنید:
table <goodguys> { 192.0.2.0/24 }
table <rfc1918>  const { 192.168.0.0/16, 172.16.0.0/12, 10.0.0.0/8 }
table <spammers> persist
block in on fxp0 from { <rfc1918>, <spammers> } to any
pass  in on fxp0 from <goodguys> to any
به این نکته توجه کنید که نام جداول در بین < > قرار می گیرد و حتی شما می توانید مقادیر آنرا در یک فایل متنی ذخیره کنید و از آن استفاده کنید به صورت زیر:
table <spammers> persist file "/etc/spammers"
block in on fxp0 from <spammers> to any

مدیریت کردن جدوال با pfctl


برای اضافه کردن یک مقدار به جدل از فرمان زیر استفاده کنید:
# pfctl -t spammers -T add 203.0.113.0/24
حال کردن جدول وجود نداشته باشد و شما قصد دارید که حتما ایجاد شود می توانید از فرمان زیر استفاده کنید:
# pfctl -t spammers -T show
برای پاک مقداری از جدول از فرمان زیر استفاده کنید :
# pfctl -t spammers -T delete 203.0.113.0/24
دیدگاه ها

هیچ دیدگاهی برای این مطلب ارسال نشده است

برای ارسال نظر وارد شوید.

Countdown