در پایان این راهنما، یک لیست IP (IP Set) میسازیم و آن را در قانون فایروال وبسایت قرار میدهیم تا درخواستهای IPهای عضو این لیست را با کد 403 مسدود کنیم.
IP Set در سطح فضای کاری ساخته میشود و میتوانیم آن را در فایروال چند وبسایت استفاده کنیم. درباره IP Set و نحوه استفاده از آن در IP Set چیست؟ بیشتر میخوانیم.
اگر هنوز فایروال را فعال نکردهایم، ابتدا اولین قانون دیواره آتش (Firewall) را بسازید را دنبال میکنیم.
پیشنیازها
- دامنه یا زیردامنه پشت CDN ستون — آموزشها
- فایروال وبسایت، فعال یا آماده فعالسازی
- آدرسها به فرمت CIDR؛ برای یک IP از پیشوند
/32استفاده میکنیم، مثلا203.0.113.10/32
مراحل
-
در پنل، از شبکه توزیع محتوا وارد لیست IP Set میشویم.
-
IP Set جدید را میزنیم.
-
در نام، یک نام توصیفی میگذاریم؛ مثلا
block-list.- نام فقط از حروف انگلیسی، عدد و خط فاصله (
-) ساخته میشود، با حرف یا عدد شروع و تمام میشود، حداکثر ۶۴ کاراکتر است و در فضای کاری یکتا است. - پس از ساخت، نام قابل ویرایش نیست.
- نام فقط از حروف انگلیسی، عدد و خط فاصله (
-
در لیست IPها هر CIDR را در یک خط مینویسیم.
203.0.113.10/32 198.51.100.0/24
استفاده از IP Set برای کشورهای مختلف
اگر میخواهیم یک قانون فایروال را بر اساس مجموعهای از IPهای یک کشور اعمال کنیم، میتوانیم رنجهای IP آن کشور را با فرمت CIDR تهیه کرده و در IP Set قرار دهیم.
برای تهیه این فهرست میتوانیم از سرویسهای ارایهدهنده رنجهای IP بر اساس کشور یا منابع بهروز استفاده کنیم. از آنجا که رنجهای IP کشورها ممکن است تغییر کنند، در صورت استفاده از این روش باید IP Set را بهطور دورهای بهروزرسانی کنیم.
- تایید و ساخت را میزنیم.
فرمت هر خط
هر خط باید یک CIDR معتبر IPv4 باشد. خط خالی، کاما (
,) و بازه با خط تیره (-) پذیرفته نمیشود.
- از وبسایتها وبسایت موردنظر را باز میکنیم و بخش فایروال (WAF) را انتخاب میکنیم. اگر فایروال خاموش است، آن را فعال میکنیم.
- افزودن قانون فایروال را میزنیم.
- برای قانون نام
block-listed-ipsرا میگذاریم. - در چه عملیاتی روی ترافیک ورودی CDN شما انجام شود؟ عملیات Block را انتخاب میکنیم و کد وضعیت را روی
403میگذاریم. - در شرطها این مقادیر را تنظیم میکنیم:
- پارامتر: آدرس IP
- عملگر: در IP Set وجود داشته باشد
- نام IP Set:
block-list
- تایید و ذخیره قانون را کلیک میکنیم.
بررسی صحت
از یک آدرس داخل block-list به دامنه درخواست میفرستیم:
curl -i https://example.com/example.com را با hostname پشت CDN جایگزین میکنیم. پاسخ باید وضعیت 403 باشد.
همان درخواست از آدرسی که در لیست نیست نباید بهخاطر قانون block-listed-ips وضعیت 403 بگیرد.
در مشاهده لحظهای لاگ درخواستها، برای درخواست مسدودشده فیلد fw_blocked مقدار BLOCKED و فیلد fw_rule_name مقدار block-listed-ips دارد.
اگر قانون اعمال نشد:
- از فعال بودن فایروال و ذخیره شدن قانون اطمینان حاصل میکنیم.
- از ترتیب درست قانون در لیست اطمینان حاصل میکنیم.
- نام انتخابشده در نام IP Set را با نام لیست مقایسه میکنیم.
- چند دقیقه برای انتشار تنظیمات روی لبهها صبر میکنیم و همان
curlرا دوباره اجرا میکنیم.
