در دنیای دیجیتال امروز، امنیت سرورها از اهمیت بالایی برخوردار است. یکی از تهدیدات متداول در برابر سرورها، حملات اتوماتیکی مانند بروت فورس است که در آن رمزهای عبور به صورت پی در پی و با استفاده از ترکیبات مختلف امتحان میشوند. برای مقابله با این نوع حملات، ابزاری به نام Fail2ban وجود دارد که قادر است آدرسهای IP مهاجمین را پس از چندین تلاش ناموفق برای ورود به سیستم، به صورت موقت مسدود کند. این راهکار ساده اما مؤثر، امنیت سرور را به طور چشمگیری افزایش میدهد. در این مقاله، ما به شما نشان میدهیم که چگونه Fail2ban را بر روی اوبونتو ۲۰.۰۴ نصب و پیکربندی کنید تا از سرور مجازی خود در برابر حملات ناخواسته محافظت نمایید.
گام اول: نصب Fail2ban
برای نصب Fail2ban از این دستور استفاده کنید:
apt install fail2ban
پس از نصب، به طور خودکار شروع به کار میکند. برای بررسی وضعیت سرویس از این دستور استفاده کنید:
systemctl status fail2ban
گام دوم: پیکربندی Fail2ban
برای تغییر تنظیمات پیش فرض مسدودسازی برای تمام سرویسها، یک کپی از فایل jail.conf ایجاد کنید.
cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
فایل jail.local را باز کرده و به بخش [DEFAULT] بروید. به عنوان مثال، بیایید زمان مسدودسازی را روی ۳۶۰۰ دقیقه تنظیم کنیم.
bantime = 3600m
برای دیدن تمام قوانین موجود، به بخش JAILS بروید. به عنوان مثال:
[nginx-http-auth]
پس از تغییر فایل، سرویس را دوباره راه اندازی کنید.
systemctl restart fail2ban
اضافه کردن و پیکربندی قوانین
یک پوشه /etc/fail2ban/jail.d/ برای مدیریت قوانین فعال وجود دارد. شما میتوانید یک فایل جداگانه برای هر یک از آنها ایجاد کنید. به عنوان مثال، nginx-http-auth.conf. روش دوم، قرار دادن پیکربندی در فایل موجود defaults-debian.conf است. فقط این خطوط را به آن اضافه کنید:
[nginx-http-auth]
enabled = true
شما میتوانید پارامترهای فردی برای هر قانون اضافه کنید.
بیایید آدرس IP را برای نادیده گرفته شدن در پارامتر ignoreip تنظیم کنیم، زمان برای مسدودسازی ۲۴۰۰ دقیقه و تعداد تلاشهای ناموفق برای احراز هویت ۱۰ باشد.
ignoreip = 10.10.10.5
bantime = 2400m
maxretry = 10
فایل را ذخیره کرده و بسته و سپس سرویس را دوباره راه اندازی کنید.
systemctl restart fail2ban
استفاده از fail2ban-client
یک کلاینت Fail2ban برای مدیریت قوانین آن وجود دارد. به خاطر داشته باشید که تمام تغییرات ایجاد شده در اینجا پس از ریبوت سیستم یا راهاندازی مجدد سرویس، ریست خواهند شد. برای مشاهده قوانین فعال از این دستور استفاده کنید:
fail2ban-client status
برای دیدن آمار jail از این دستور با نام مورد نیاز به جای sshd استفاده کنید:
fail2ban-client status sshd
برای فعال کردن یک قانون، از نام آن در فایل پیکربندی و دستور زیر استفاده کنید:
fail2ban-client add nginx-http-auth
سپس آن را شروع کنید.
fail2ban-client start nginx-http-auth
برای مشاهده تمام دستورات موجود:
fail2ban-client -h
نتیجهگیری
در پایان این راهنما، ما به شما نشان دادیم که چگونه میتوانید با استفاده از Fail2ban، سرور اوبونتوی ۲۰.۰۴ خود را در برابر حملات اتوماتیکی محافظت کنید. با نصب و پیکربندی دقیق Fail2ban، شما قدم بزرگی در جهت افزایش امنیت سرور خود برداشتهاید. اکنون، با استفاده از این ابزار قدرتمند، میتوانید تلاشهای ناموفق برای ورود به سیستم را کنترل کرده و از حملات احتمالی جلوگیری کنید. به یاد داشته باشید که امنیت سرور نیازمند یک رویکرد جامع است و استفاده از Fail2ban تنها بخشی از این مجموعه است.
اما برای تکمیل این رویکرد جامع و اطمینان از امنیت بالاتر و عملکرد بهینهتر، انتخاب یک سرور مجازی (VPS) مناسب اهمیت زیادی دارد. ما در زویپ سرور، با ارائه سرورهای مجازی پیشرفته و قابل اعتماد، به شما کمک میکنیم تا با خیال راحت بر روی افزایش امنیت و بهبود عملکرد سرور خود تمرکز کنید. سرورهای مجازی ما با پشتیبانی ۲۴ ساعته، قابلیت اطمینان بالا و انعطافپذیری برای هر نوع کسبوکار یا پروژه، طراحی شدهاند. بهروز رسانیهای امنیتی و بهترین شیوههای مدیریت سرور، بخشی از تعهد ما به ارائه خدمات بینقص به شما است.