آموزش کانفیگ csf از 0 تا 100 و جلوگیری از حملات رایج هکرها

آموزش کانفیگ csf

کانفیگ csf تنها یکی از راه‌هایی است که می‌توانید برای جلوگیری از حمله DDOS از آن استفاده کنید و تا حدی جلوی برخی از حملات را بگیرید. حملات 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 شماره پورتی که می‌خواهید این حملات را روی آن کنترل کنید وارد کنید.

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

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

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

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

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

"CONNLIMIT = "ort;limit

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

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

"CT_LIMIT = "100

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

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

"CT_PERMANENT = "1

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

"SYNFLOOD = "1" SYNFLOOD_RATE = "30/s" SYNFLOOD_BURST ="30

به صورت پیش‌فرض گزینه 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 آدرس آی پی فرد مهاجم را قرار دهید و تمام.

آیا این مطلب برای شما مفید بود؟

میانگین امتیاز ۵ / ۵. تعداد آرا: ۲۶

اشتراک در
اطلاع از
guest

0 نظرات
بازخورد (Feedback) های اینلاین
مشاهده همه دیدگاه ها

فرم ثبت نام در مسابقه فتح پرچم

برای شرکت در مسابقه باید با اطلاعات صحیح عضو شوید
ثبت نام در مسابقه
close-link