کانفیگ csf و جلوگیری از حملات رایج هکرها به سمت سرور

کانفیگ csfحملات DDOS جز مهم‌ترین و مرسوم‌ترین روش‌هایی است که هکرها از آن برای حمله به سمت سرورها و سایت‌های موردنظر خود استفاده می‌کنند.

ایجاد ارتباط‌های بسیار زیاد در هر ثانیه باعث می‌شود لود سرور تا حد بسیار زیادی افزایش یافته و در نهایتاً باعث از دسترس خارج شدن سرور شود.

کانفیگ csf تنها یکی از راه‌هایی است که می‌توانید برای جلوگیری از حمله DDOS از آن استفاده کنید.

البته بهترین روش جلوگیری از این نوع حملات Null-Route کردن IP تا زمانی است که سرور پاسخگو درخواست‌ها باشد.

از روش‌های مکمل نیز برای دفاع از سرور می‌توان استفاده کرد که CDN یا خدمات Cloudflare جز این متدهاست.

در حملاتی که با شدت بسیار بالا و توسط Botnet انجام می‌شوند ترکیب این روش‌ها بعلاوه استفاده از فایروال سخت‌افزاری نیز می‌تواند دیوار دفاعی قدرتمندی ایجاد کند.

 

نحوه کانفیگ csf

ما فرض را بر این می‌گیریم که قبلاً شما با نصب فایروال csf این آموزش را پیگیری می‌کنید. اگر csf را نصب نکرده‌اید قبل از ادامه آموزش آن را نصب و سپس ادامه این مقاله را مطالعه کنید.

برای کانفیگ csf ابتدا فایل مربوط به کانفیگ را با یک ویرایشگر باز کنید.

vi /etc/csf/csf.conf

سپس حالت تست را توسط گزینه زیر غیرفعال کنید.

TESTING = "0"

همیشه بهترین روش امن کردن سرور در مرحله اول غیرفعال کردن سرویس‌های غیرضروری و بستن پورت‌های باز روی سرور است.

توسط بخش زیر می‌توانید فقط پورت‌هایی را که باید بر روی سرور باز باشند را اجازه فعالیت به آن‌ها بدهید هر پورتی که در این بخش قرار نگیرد مسدود خواهد شد.

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,587,993,995"

این بخش مربوط به دسته پورت‌های TCP در حالات incoming و outgoing هستند.

توسط دو بخش زیر هم می‌توانید پورت‌های مربوط به پروتکل UDP را بر روی سرور کنترل کنید.

UDP_IN = "20,21,53"
UDP_OUT = "20,21,53,113,123"

البته فایل کانفیگ csf دارای بخش‌های زیادی است که ما فقط بر روی مهم‌ترین بخش‌های آن کار خواهیم کرد و آن‌ها را آموزش خواهیم داد.

البته برای هر بخش توضیحاتی به صورت comment نوشته شده که در صورت نیاز می‌توانید آن‌ها را نیز مطالعه کنید.

در صورتی که حمله‌ای از نوع port flood بر روی سرور رخ دهد می‌توانید توسط بخش زیر آن را کنترل و مسدود کنید.

PORTFLOOD = “port;protocol;hit_count;interval_in_seconds”

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

این آموزش مال شماست :  نحوه مسدود کردن ping در لینوکس(جلوگیری از حملات flooding)

جای protocol هم باید نوع پروتکل که یا TCP و یا UDP است را قرار می‌دهید.

به جای hit_count تعداد درخواست‌های مجاز به سمت پورت را مشخص می‌کنید و به جای interval_in_seconds مدت زمان‌بر حسب ثانیه که به آن پورت تعداد مشخصی درخواست ارسال می‌شود را وارد کنید.

یعنی شکل نهایی این بخش چیزی شبیه این کد PORTFLOOD = “۸۰;tcp;50;10” خواهد بود.

برای واردکردن چند پورت هم‌زمان نیز با علامت , می‌توانید این کار را انجام دهید.

در بخش زیر نیز می‌توانید دقیقاً مشخص کنید چند ارتباط هم‌زمان به پورت موردنظر امکان اتصال خواهند داشت.

CONNLIMIT = “port;limit”

در واقع بدین فرمت شما تعریف می‌کنید هر کاربری که درون سایت شما درخواستی را ارسال می‌کنید به پورت موردنظر که معمولاً اکثر حملات به سمت پورت ۸۰ است محدود شود.

توسط گزینه بعدی نیز به‌طور کلی ارتباط هم‌زمان هر کاربر به تمامی پورت‌ها را مشخص می‌کنیم.

CT_LIMIT = “۱۰۰”

در این حالت هر کاربر به صورت هم‌زمان فقط مجاز به ایجاد ۱۰۰ ارتباط هم‌زمان زنده است.

گزینه بعدی که وابسته به option قبلی است در صورتی که تعداد ارتباطات هر کاربر به سمت سرور بیشتر از ۱۰۰ شود IP فرد موردنظر مسدود خواهد شد.

CT_PERMANENT = “۱”

برای جلوگیری از حملات SYNFLOOD در کانفیگ csf با ویرایش مقادیر زیر می‌توانید آن را تحت کنترل داشته باشید.

SYNFLOOD = “۱" SYNFLOOD_RATE = “۳۰/s” SYNFLOOD_BURST = “۳۰"

به صورت پیش‌فرض گزینه SYNFLOOD مقدار ۰ دارد که آن را غیرفعال می‌کند.

اگر ۳۰ ارتباط از هر کاربر برای ۳۰ بار تکرار شود دسترسی فرد مهاجم توسط فایروال csf مسدود خواهد شد.

گزینه‌های مهمی که برای کانفیگ csf باید آن‌ها را می‌دانستید تماماً با مثال آموزش داده شد حالا باید جهت اعمال تغییرات، بعد از ذخیره فایل کانفیگ توسط دستور زیر یک‌بار سرویس csf را ریست کنید.

systemctl restart csf

یک مورد رو هم اضافه کنم برای مدیران سروری که مرتب سرور خودشان را مانیتور می‌کنند. اگر شک داشتید که سرور شما زیر حمله ddos قرار دارد توسط دستور زیر در لینوکس دقیقاً می‌توانید متوجه شوید هر IP چه تعداد ارتباط با سرور شما ایجاد کرده است.

netstat -alpn | grep :80 | awk '{print $4}' |awk -F: '{print $(NF-1)}' |sort | uniq -c | sort -n

در صورت مشکوک بودن با مسدود کردن IP با دستور زیر سرور را از زیر لود نجات دهید.

csf –d IP

به‌جای عبارت IP آدرس آی پی فرد مهاجم را قرار دهید و تمام.

حسین محمدپور

با علاقه زیادی که به مباحث تخصصی امنیت سرور داشتم از 8 سال پیش کار خود را در این زمینه شروع کردم و طی این مدت مدیر 2 تیم امنیتی بزرگ ایرانی بودم و حالا با 4 سال سابقه در زمینه مباحث مدیریت سرور و میزبانی وب، سایت مدیر سرور را راه اندازی کردم تا بتوانم به علاقه مندان و مشتاقان این حوزه تخصصی کمک کنم.

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

افزایش ترافیک سایت تا ۶۰۰% فقط در ۷ روز

تکنیک های جدید سئو در سال 98
تکنیک‌های کارآمدی که در سایت مدیر سرور آزموده شده‌اند
دنلود ویدیو
نگران نباشید، ایمیل مزاحم ارسال نمی کنیم
close-link