در مقاله آموزشی قبلی در مورد CSF و امکانات و خصوصیات و همچنین نحوه نصب آن بطور کامل توضیح دادیم. در این مقاله به کانفیگ CSF میپردازیم پس با ما همراه باشید.
کانفیگ پایه
CSF را می توان با ویرایش فایل پیکربندی csf.conf در /etc/csf پیکربندی کرد:
nano /etc/csf/csf.conf
تغییرات را می توان با دستور اعمال کرد:
csf -r
مرحله 1: پیکربندی پورت ها
هرچه دسترسی کمتری به VPS شما وجود داشته باشد، سرور شما از امنیت بیشتری برخوردار است. با این حال، همه پورت ها را نمی توان بسته کرد زیرا مشتریان باید بتوانند از خدمات شما استفاده کنند.
پورت های باز شده به صورت پیش فرض به شرح زیر است:
TCP_IN = "20,21,22,25,53,80,110,143,443,465,587,993,995" TCP_OUT = "20,21,22,25,53,80,110,113,443" UDP_IN = "20,21,53" UDP_OUT = "20,21,53,113,123"
خدمات با استفاده از پورت های باز:
پورت 20:(FTP) _ پورت 21:(FTP) _ پورت 22:(SSH) _ پورت 25:(SMTP) _ پورت 53:(DNS) _ پورت 80:(HTTP) _ پورت 110(POP3) _ پورت 123(NTP) _ پورت 143:(IMAP) _ پورت 443:SSL/TLS (HTTPS) _ پورت 465:(سیسکو) _ پورت 587:(SMTP) _ پورت 993:SSL (IMAPS) _ پورت 995:TLS/SSL (POP3S)
این امکان وجود دارد که از همه این سرویس ها استفاده نکنید، بنابراین می توانید پورت هایی را که استفاده نمی شوند ببندید. اما توصیه می کنیم همه پورت ها را ببندید (شماره پورت را از لیست حذف کنید)، و سپس پورت های مورد نیاز خود را اضافه کنید.
در زیر مجموعه پورت هایی وجود دارد که در صورت اجرای سرویس لیست شده باید باز شوند:
در هر سرور:
TCP_IN: 22,53 TCP_OUT: 22,53,80,113,443 UPD_IN: 53 UPD_OUT: 53,113,123
آپاچی:
TCP_IN: 80,443
سرور FTP:
TCP_IN: 20,21 TCP_OUT: 20,21 UPD_IN: 20,21 UPD_OUT:20,21
سرور ایمیل:
TCP_IN: 25,110,143,587,993,995 TCP_OUT: 25,110
سرور MySQL (در صورت نیاز به remote):
TCP_IN: 3306 TCP_OUT: 3306
توجه: اگر از IPv6 برای سرویسهای خود استفاده میکنید، باید TCP6_IN، TCP6_OUT، UPD6_IN، و UPD6_OUT را نیز مانند نحوه پیکربندی پورتهای IPv4 قبلی پیکربندی کنید.
مرحله 2: تنظیمات اضافی
CSF تعداد زیادی از گزینه های مختلف را در فایل های پیکربندی خود ارائه می دهد. برخی از متداول ترین تنظیمات مورد استفاده در زیر توضیح داده شده است.
-
ICMP_IN: تنظیم ICMP_IN روی 1 اجازه می دهد تا از سرور شما پینگ گرفته شود و 0 این درخواست را رد میکند و اجازه نمیدهد. اگر میزبان سرویس های عمومی هستید، توصیه میشود درخواستهای ICMP را مجاز کنید، زیرا میتوان از این درخواستها برای تعیین اینکه آیا سرویس شما در دسترس است یا خیر استفاده کرد.
-
ICMP_IN_LIMIT: تعداد درخواست های ICMP (پینگ) مجاز از یک آدرس IP را در مدت زمان مشخصی تنظیم می کند. معمولاً نیازی به تغییر مقدار پیش فرض (1/s) نیست.
-
DENY_IP_LIMIT: تعداد آدرس های IP مسدود شده را که CSF آنها را دنبال می کند، تنظیم می کند. توصیه میشود تعداد آدرسهای IP رد شده را محدود کنید زیرا وجود بلوکهای زیاد ممکن است عملکرد سرور را کاهش دهد.
-
SYNFLOOD، SUNFLOOD_RATE و SYNFLOOD_BURST: این محافظت در برابر حملات سیل SYN ارائه می دهد. این امر سرعت دهی اولیه هر اتصال را کند می کند، بنابراین فقط در صورتی باید آن را فعال کنید که بدانید سرور شما مورد حمله قرار گرفته است.
-
CONNLIMIT: تعداد اتصالات فعال همزمان در پورت را محدود می کند.مقدار: 22;5;443;20امکان 5 اتصال همزمان در پورت 22 و 20 اتصال همزمان در پورت 443 را فراهم می کند.
-
PORTFLOOD: تعداد اتصالات را در هر بازه زمانی که می توان اتصالات جدید به پورت های خاص ایجاد کرد، محدود می کند.مقدار: 22;tcp;5;250اگر بیش از 5 اتصال در پورت 22 با استفاده از پروتکل TCP در عرض 250 ثانیه ایجاد شود، آدرس IP را محدود می کند. پس از گذشت 250 ثانیه از آخرین بسته ارسال شده توسط مشتری به این پورت، بلوک حذف می شود. می توانید پورت های بیشتری را با جدا کردن آنها با کاما مانند آنچه در زیر توضیح داده شده است اضافه کنید.
port1;protocol1;connection_count1;time1,port2;protocol2;connection_count2;time2
مرحله 3: اعمال تغییرات
هر زمان که تنظیمات را در csf.conf تغییر می دهید، باید فایل ها را ذخیره کرده و CSF را مجددا راه اندازی کنید تا تغییرات اعمال شوند.
هنگامی که پیکربندی را آماده کردید، فایل را با فشار دادن Ctrl + X ببندید. وقتی از شما پرسیده شد که آیا تغییرات را ذخیره کنید یا خیر، Y را فشار دهید تا تغییرات ذخیره شوند.
پس از این، باید تغییرات را با راه اندازی مجدد CSF با دستور اعمال کنید:
csf -r
اگر همه چیز طبق برنامه پیش رفت و همچنان میتوانید به سرور دسترسی داشته باشید، یک بار دیگر فایل پیکربندی را باز کنید:
nano /etc/csf/csf.conf
و تنظیمات TESTING در ابتدای فایل پیکربندی را مطابق شکل زیر به 0 تغییر دهید:
TESTING = "0"
فایل را ذخیره کنید و تغییرات را با دستور اعمال کنید:
csf -r
مسدود کردن و اجازه دادن به آدرس های IP
یکی از اساسی ترین ویژگی های فایروال، توانایی مسدود کردن آدرس های IP خاص است. شما می توانید با ویرایش فایل های پیکربندی csf.deny، csf.allow و csf.ignore آدرس های IP را رد کنید (لیست سیاه)، اجازه دهید (لیست سفید) یا نادیده بگیرید.
مسدود کردن آدرس های IP
اگر میخواهید یک آدرس IP یا محدوده را مسدود کنید، csf.deny را باز کنید.
nano /etc/csf/csf.deny
آدرسها یا محدودههای IP مسدود شده همه یک خط در فایل csf.deny ذخیره میکنند. اگر می خواهید آدرس IP 1.2.3.4 و همچنین محدوده IP 2.3.*.* را مسدود کنید، باید خطوط زیر را به فایل اضافه کنید:
1.2.3.4 2.3.0.0/16
محدوده IP با استفاده از نماد CIDR نشان داده می شود.
اجازه دادن به آدرس های IP
اگر میخواهید یک آدرس IP یا محدوده از همه بلوکها و فیلترها حذف شود، میتوانید آنها را به فایل csf.allow اضافه کنید. لطفاً توجه داشته باشید که آدرسهای IP مجاز حتی اگر به صراحت در فایل csf.deny مسدود شده باشند مجاز هستند.
اجازه دادن به آدرس های IP مانند مسدود کردن آنها عمل می کند. تنها تفاوت این است که شما باید /etc/csf/csf.allow را به جای csf.deny ویرایش کنید.
nano /etc/csf/csf.allow
نادیده گرفتن آدرس های IP
CSF همچنین توانایی حذف آدرس های IP از فیلترهای فایروال را ارائه می دهد. آدرسهای IP در csf.ignore فیلترهای فایروال را دور میزنند و فقط در صورتی میتوانند مسدود شوند که در فایل csf.deny فهرست شده باشند.
nano /etc/csf/csf.ignore
برای اعمال تغییرات، باید CSF را پس از ویرایش هر یک از فایل های توضیح داده شده در بالا با دستور، مجدداً راه اندازی کنید:
csf -r
در این آموزش طریقه نصب فایروال CSF در ابونتو را توضیح دادیم. امیدواریم این مقاله آموزشی برای شما مفید بوده باشد، برای دیدن باقی آموزش ها میتوانید وارد منوی پشتیبانی بخش آموزش ها شوید، در صورتی که درباره این آموزش به مشکل یا سوالی برخورد کردید، میتوانید آن را در بخش دیدگاه بیان کنید.
آموزش های مرتبط: