جدول محتوایی
Fail2Ban
Fail2Ban بدون شک بهترین نرم افزار برای ایمن سازی سرور لینوکس و محافظت از آن در برابر حملات خودکار است. وقتی فعال باشد، قوانین قابل تنظیم بسیاری را برای ممنوع کردن آدرسهای منبعی که ممکن است سعی کنند به دستگاه شما دسترسی پیدا کنند، ارائه میکند. Fail2Ban دست در دست یک فایروال کار می کند، بنابراین توصیه می کنیم آنها را به عنوان لایه های امنیتی جداگانه نصب و فعال کنید.
در پست های قبل، نحوه جلوگیری از هک سرور مجازی CentOS با Fail2Ban را بررسی کرده بودیم.
در این مقاله به توضیح Fail2Ban و موارد استفاده آن می پردازیم. همچنین نحوه نصب و راه اندازی Fail2Ban در اوبونتو را به شما نشان خواهیم داد.
نحوه نصب Fail2Ban
1. قبل از نصب پکیج جدید، توصیه می کنیم مخزن سیستم و نرم افزار را به روز رسانی کنید. دستور زیر را اجرا کنید:
apt-get update && apt-get upgrade
2. پکیج Fail2Ban را با اجرای دستور زیر نصب کنید:
apt-get install fail2ban
3. اگر می خواهید پشتیبانی ایمیل را برای سرویس Fail2Ban اضافه کنید، دستور زیر را وارد کرده و Enter را فشار دهید:
apt-get install sendmail
4. با استفاده از دستور زیر وضعیت نصب بودن Fail2Ban را تأیید کنید:
sudo systemctl status fail2ban
آموزش راه اندازی Fail2Ban
پس از نصب Fail2Ban، پیکربندی آن را در نظر بگیرید. در این بخش، نحوه انجام این کار را با استفاده از فایل jail.local بررسی خواهیم کرد.
Fail2Ban یک فایل پیکربندی به نام jail.conf دارد که شامل زندان ها – فیلترهایی با اکشن ها است. با این حال، کاربران نباید مستقیماً این فایل را تغییر دهند زیرا حاوی قوانین اساسی برای نرم افزار است.
در عوض، یک کپی از فایل اصلی تهیه کنید و نام آن را jail.local بگذارید. با استفاده از آن، میتوانید فیلترها و اقداماتی مانند ignoreip، bantime، findtime، maxretry و backend را سفارشی و تنظیم کنید.
ignoreip
این ویژگی از شما میخواهد که آدرسهای IP قابل اعتماد، میزبانهای DNS یا ماسکهای CIDR را مشخص کنید که Fail2Ban باید نادیده گرفته شود. این پارامتر به تمام ترافیک هایی که از منابع مشخص شده می آیند اجازه می دهد. می توانید چندین آدرس اضافه کنید و آنها را با فاصله جدا کنید.
bantime
این پارامتر مدت زمانی را که یک کلاینت پس از احراز هویت ناموفق ممنوع می شود را تعیین می کند. دوره ممنوعیت بر حسب ثانیه اندازه گیری می شود و عدد پیش فرض 600 یا 10 دقیقه است.
findtime
این تنظیم دوره زمانی تلاش های ناموفق برای ورود را تعیین می کند. اگر یک میزبان در طول دوره تنظیم شده چندین بار (بر اساس تنظیمات maxretry) احراز هویت ناموفق باشد، آدرس IP آن ممنوع خواهد شد.
maxretry
maxretry همراه با findtime کار می کند – حداکثر تعداد تلاش های ناموفق برای ورود را در پنجره زمانی تعریف شده تنظیم می کند. مقدار پیش فرض 5 است.
backend
این ویژگی به شما این امکان را می دهد که پیکربندی باطن را برای اصلاح فایل مشخص کنید. مقدار پیشفرض خودکار است، اما اگر از CentOS یا Fedora استفاده میکنید، باید پیکربندی شود.
- pynotify – تغییرات سیستم فایل را در زمان واقعی نظارت می کند و برای نصب نیاز به یک مانیتور تغییر فایل دارد.
- gamin – مانند pynotify اما به ابزار Gamin نیاز دارد.
- polling – از یک الگوریتم نظرسنجی استفاده می کند که به کتابخانه های خارجی نیاز ندارد.
- systemd – از کتابخانه systemd python برای دسترسی به ژورنال systemd استفاده می کند.
- auto – از مقادیر قبلی به این ترتیب استفاده می کند – pyinotify، gamin و polling.
همچنین می توانید تنظیمات اضافی را در فایل jail.local تنظیم کنید، از جمله تنظیمات SSH و iptables. گزینه های موجود عبارتند از:
banaction – تعریف می کند که در صورت رسیدن به آستانه maxretry از کدام عملکرد پیش فرض استفاده شود. اگر از فایروالد استفاده می کنید، مقدار را روی firewallcmd-ipset قرار دهید. با این حال، اگر UFW را به عنوان فایروال خود تنظیم کرده اید، آن را به ufw تغییر دهید.
banaction_allports – به شما امکان می دهد آدرس های IP را در هر پورت برچسب گذاری و مسدود کنید. اگر از فایروال استفاده می کنید، مقدار را روی firewallcmd-ipset قرار دهید.
port – مقدار باید با سرویس تنظیم شده مطابقت داشته باشد. اگر از پورت پیش فرض استفاده می کنید، مقدار را به نام سرویس تغییر دهید. اگر از پورت غیر سنتی استفاده می کنید، شماره آن را در اینجا وارد کنید.
filter – نام فایل واقع در /etc/fail2ban/filter.d حاوی اطلاعات failregex است که برای تجزیه فایل های گزارش استفاده می شود.
نتیجه
Fail2Ban نرم افزار تجزیه و تحلیل گزارش است که به محافظت از وب سرورهای مبتنی بر لینوکس در برابر حملات سایبری کمک می کند.
در این مقاله نحوه نصب Fail2Ban را بر روی سیستم عامل محبوب Ubuntu نشان دادیم. همچنین نحوه ویرایش jail.local، فایل پیکربندی نرم افزار را توضیح دادیم. امیدواریم این مقاله به شما در راه اندازی Fail2Ban در سرور لینوکس کمک کرده باشد. اگر سوال یا پیشنهادی دارید، آن را در بخش نظرات زیر مطرح کنید.
نامبروان هاستینگ هستید
با سپاس
ممنون خدا قوت
اگر ممکن است این پست رو بروز کنید نکات دیگری هم عنوان شده در نت
ممنون هرچی در مورد این موضوع میخواستم به راحتی عنوان کرده بودید
ایرانیکاسرور همیشه عالی هستید
خیلی خوب توضیح دادید