امنیت سرورهای میزبانی وب از جمله مهمترین مسئولیتهای مدیران سیستم است. ابزار Fail2Ban یکی از ابزارهای قدرتمند و موثر برای جلوگیری از دسترسی غیرمجاز به سرورها محسوب میشود. این ابزار از طریق تحلیل لاگ فایلها، فعالیتهای مشکوک را شناسایی و بهطور خودکار آیپیهای مخرب را مسدود میکند. در این مقاله، مراحل نصب، پیکربندی و بهینهسازی Fail2Ban در دایرکت ادمین را بررسی خواهیم کرد.
Fail2Ban یک ابزار متنباز است که برای محافظت از سرورها در برابر حملات سایبری طراحی شده است. این ابزار لاگ فایلهای سرویسهایی مانند SSH، FTP و وبسرورها را بررسی کرده و آیپیهایی که چندین بار تلاش ناموفق برای ورود داشتهاند، بهطور موقت یا دائم مسدود میکند.
دایرکت ادمین بهعنوان یکی از محبوبترین کنترل پنلها برای مدیریت هاست و سرورها، امکانات متعددی را برای سرویسدهی ارائه میدهد. با افزودن Fail2Ban به این محیط، میتوانید امنیت کاربران و سرویسهای خود را به میزان قابلتوجهی افزایش دهید.
قبل از شروع نصب Fail2Ban، باید موارد زیر را آماده کنید:
ابتدا Fail2Ban را روی سرور خود نصب کنید. برای سیستمهای مبتنی بر Debian/Ubuntu، از دستورات زیر استفاده کنید:
sudo apt update
sudo apt install fail2ban
برای سیستمهای مبتنی بر CentOS یا RedHat، دستور زیر را اجرا کنید:
sudo yum install epel-release
sudo yum install fail2ban
پس از نصب، وضعیت سرویس Fail2Ban را بررسی کنید:
sudo systemctl status fail2ban
برای اطمینان از اجرای خودکار سرویس هنگام راهاندازی سرور، دستور زیر را اجرا کنید:
sudo systemctl enable fail2ban
فایل پیکربندی پیشفرض Fail2Ban در مسیر /etc/fail2ban/jail.conf
قرار دارد. توصیه میشود یک نسخه کپی از این فایل ایجاد کنید و تغییرات را در یک فایل جدید به نام jail.local
اعمال کنید:
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
فایل jail.local
را با یک ویرایشگر متن باز کنید:
sudo nano /etc/fail2ban/jail.local
در فایل jail.local
، مقادیر زیر را تنظیم کنید:
[DEFAULT]
bantime = 3600
findtime = 600
maxretry = 5
توضیحات:
bantime
: مدت زمان مسدودسازی آیپی (برحسب ثانیه)findtime
: بازه زمانی برای شمارش تلاشهای ناموفقmaxretry
: تعداد تلاشهای ناموفق قبل از مسدودسازیدر فایل jail.local
، بخشهای مربوط به سرویسهای موردنظر خود را فعال کنید. برای مثال، برای SSH و Exim:
[sshd]
enabled = true
port = ssh
logpath = /var/log/auth.log
maxretry = 5
[exim]
enabled = true
port = smtp,ssmtp
logpath = /var/log/exim_mainlog
maxretry = 3
برای اعمال تغییرات، Fail2Ban را مجدداً راهاندازی کنید:
sudo systemctl restart fail2ban
برای مشاهده وضعیت Jailهای فعال، از دستور زیر استفاده کنید:
sudo fail2ban-client status
برای بررسی آیپیهای مسدودشده در یک Jail خاص، مثلاً SSH، از دستور زیر استفاده کنید:
sudo fail2ban-client status sshd
برای اطمینان از عملکرد بهینه Fail2Ban در دایرکت ادمین، نکات زیر را در نظر بگیرید:
Fail2Ban میتواند ایمیلهای هشدار ارسال کند. برای فعالسازی این ویژگی، تنظیمات زیر را در فایل jail.local
اعمال کنید:
[DEFAULT]
destemail = [email protected]
sender = [email protected]
mta = sendmail
action = %(action_mwl)s
برای اطمینان از مسدود نشدن آیپیهای معتبر، میتوانید آیپیهای موردنظر را در لیست سفید قرار دهید:
[DEFAULT]
ignoreip = 127.0.0.1/8 192.168.1.0/24
Fail2Ban به شما امکان میدهد فیلترهای سفارشی برای لاگ فایلهای خاص ایجاد کنید. این فیلترها در مسیر /etc/fail2ban/filter.d
قرار میگیرند.
Fail2Ban یکی از بهترین ابزارهای امنیتی برای محافظت از سرورهای دایرکت ادمین است. با استفاده از این ابزار، میتوانید تلاشهای غیرمجاز برای دسترسی به سرور را بهطور موثر شناسایی و مسدود کنید. تنظیمات و توصیههای ارائه شده در این مقاله، امنیت سرور شما را به سطح بالاتری ارتقا میدهند.
برای خرید هاست با کیفیت و پشتیبانی حرفهای، از خدمات ماهان کلود استفاده کنید. با انتخاب ماهان کلود، بهترین تجربه میزبانی وب را خواهید داشت.