نصب ابزار Fail2ban در اوبونتو ساده است، در این مقاله نحوه نصب و کانفیگ Fail2ban در لینوکس توزیع Ubuntu را به شما عزیزان آموزش خواهیم داد، همراه داتیس نتورک باشید.
Fail2ban در اوبونتو
Fail2ban یک نرم افزار امنیتی برای جلوگیری از حملات بروت فورس (Brute Force) است
این نرم افزار که به زبان Python نوشته شده است آن را قادر میسازد تا بر روی سیستم های POSIX Fail2ban که دارای رابط کاربری یا فایروال نصب شده به صورت محلی هستند (مانند iptables و…) اجرا گردد.
در این مقاله نحوه نصب و کانفیگ ابزار Fail2ban در لینوکس توزیع Ubuntu را به شما عزیزان آموزش خواهیم داد، همراه داتیس نتورک باشید.
مراحل نصب Fail2ban در Ubuntu
برای نصب آن ، دستور زیر را به عنوان root یا کاربر دارای امتیازات sudo وارد کنید :
sudo apt update sudo apt install fail2ban
پس از اتمام نصب ، سرویس Fail2ban بطور خودکار شروع می شود.
می توانید با بررسی وضعیت سرویس ، آن را تأیید کنید:
sudo systemctl status fail2ban
خروجی به شرح زیر خواهد بود:
● fail2ban.service - Fail2Ban Service
Loaded: loaded (/lib/systemd/system/fail2ban.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2020-08-19 06:16:29 UTC; 27s ago
Docs: man:fail2ban(1)
Main PID: 1251 (f2b/server)
Tasks: 5 (limit: 1079)
Memory: 13.8M
CGroup: /system.slice/fail2ban.service
└─1251 /usr/bin/python3 /usr/bin/fail2ban-server -xf start
در این مرحله ، باید Fail2Ban را روی سرور Ubuntu اجرا شده باشد.
کانفیگ Fail2ban در اوبونتو
نصب پیش فرض Fail2ban همراه با دو پرونده پیکربندی ، /etc/fail2ban/jail.conf و /etc/fail2ban/jail.d/defaults-debian.conf است که توصیه نمی شود این فایل ها را تغییر دهید.
زیرا ممکن است هنگام به روزرسانی بسته، آنرا رونویسی کند.
Fail2ban پرونده های پیکربندی را به ترتیب زیر می خواند.
هر فایل .local تنظیمات را از فایل .conf عبور میدهد:
/etc/fail2ban/jail.conf /etc/fail2ban/jail.d/*.conf /etc/fail2ban/jail.local /etc/fail2ban/jail.d/*.local
برای بسیاری از کاربران، ساده ترین راه برای کانفیگ Fail2ban ، کپی کردن jail.conf به jail.local و تغییر فایل .local است.
کاربران پیشرفته تر می توانند یک فایل .local را از ابتدا بسازند.
این فایل .local شامل کلیه تنظیمات مربوط به فایل .conf مربوطه نیست ، فقط مواردی که می خواهید رد کنید.
یک فایل .local پیکربندی از jail.conf پرونده پیش فرض ایجاد کنید:
sudo cp /etc/fail2ban/jail.{conf,local}
برای شروع کانفیگ Fail2ban ، فایل jail.local را با ویرایشگر متن خود باز کنید :
sudo cp /etc/fail2ban/jail.local
این پرونده شامل کامنت هایی است که می گوید هر گزینه پیکربندی چیست.
در این مثال تنظیمات اساسی را تغییر خواهیم داد.
تنظیمات Ban
مقادیر bantime، findtimeو maxretryگزینه های زمان ممنوعیت و شرایط ممنوعیت را تعریف می کند.
bantime مدت زمانی است که IP ممنوع است.
وقتی هیچ پسوند تنظیم نشده باشد ، چند ثانیه پیش فرض آن است.
به طور پیش فرض ، bantime مقدار 10 دقیقه تنظیم می شود.
به طور کلی ، اکثر کاربران می خواهند زمان ممنوعیت طولانی تر را تعیین کنند.
مقدار را به دلخواه تغییر دهید:
nano /etc/fail2ban/jail.local
bantime = 1d
برای ممنوعیت دائم IP از یک شماره منفی استفاده کنید.
findtime مدت زمان بین تعداد تلاش های مهاجم قبل از تعیین ممنوعیت است.
به عنوان مثال:
اگر Fail2ban قرار است IP را پس از پنج حمله کردن ممنوع کند، این حمله ها باید در طول مدت findtime رخ دهند .
findtime = 10m
maxretry تعداد حمله ها قبل از ممنوعیت IP است.
مقدار پیش فرض روی پنج تنظیم شده است که باید برای اکثر کاربران خوب باشد.
maxretry = 5
اعلان های ایمیل
در صورت ممنوعیت IP ها ، Fail2ban می تواند هشدارهای ایمیل ارسال کند.
برای دریافت ایمیل باید SMTP را روی سرور خود نصب کرده و عملکرد پیش فرض را که فقط IP را ممنوع می کند به %(action_mw)s، تغییر دهید ، همانطور که در زیر آورده شده است.
nano /etc/fail2ban/jail.local action = %(action_mw)s
%(action_mw)s آی پی های متخلف را بلاک کرده و با یک گزارش whois ایمیلی ارسال می کند.
اگر می خواهید لاگ های مربوطه را در ایمیل وارد کنید ، آن را اینگونه تنظیم کنید %(action_mwl)s.
همچنین می توانید آدرس های ایمیل و ارسال و دریافت را تنظیم کنید:
nano /etc/fail2ban/jail.local
destemail = admin@Datisnetwork.com sender = root@Datisnetwork.com Fail2ban Jails
Fail2ban از مفهوم زندان (Jails) استفاده می کند.
به طور پیش فرض فقط ssh Jail فعال می شود.
برای فعال کردن Jails باید enabled = true بعد از عنوان Jails اضافه کنید .
مثال زیر نحوه فعال سازی زندان proftpd را نشان می دهد:
nano /etc/fail2ban/jail.local
[proftpd] port = ftp,ftp-data,ftps,ftps-data logpath = %(proftpd_log)s backend = %(proftpd_backend)s
تنظیماتی که در بخش قبلی در مورد آنها صحبت کردیم ، می تواند در هر Jail تنظیم شود.
به عنوان مثال:
/etc/fail2ban/jail.local
[sshd] enabled = true maxretry = 3 findtime = 1d bantime = 4w ignoreip = 127.0.0.1/8 23.34.45.56
فیلترها در دایرکتوری /etc/fail2ban/filter.d قرار دارند و در پرونده ای با همین نام در jail ذخیره می شوند.
هر بار که یک پرونده پیکربندی را ویرایش می کنید ، باید سرویس Fail2ban را مجدداً راه اندازی کنید تا تغییرات به مرحله اجرا در بیایند:
sudo systemctl restart fail2ban
Fail2ban کلاینت
Fail2ban با یک ابزار خط فرمان به نام fail2ban-client شما ارسال می شود که می توانید از آنها برای تعامل با سرویس Fail2ban استفاده کنید.
برای مشاهده همه گزینه های موجود ، این فرمان را با -hفراخوانی میکنیم:
fail2ban-client -h
از این ابزار می توان برای ممنوعیت / غیرفعال کردن آدرس های IP ، تغییر تنظیمات ، راه اندازی مجدد سرویس و موارد دیگر استفاده کرد.
در اینجا چند مثال آورده شده است:
وضعیت Jail را بررسی کنید:
sudo fail2ban-client status sshd
آنبلاک کردن آی پی:
sudo fail2ban-client set sshd unbanip 23.34.45.56
بلاک کردن آی پی:
sudo fail2ban-client set sshd banip 23.34.45.56
لیست سفید IP ها
آدرس های IP ، محدوده های IP یا هاست هایی که می خواهید از بلاک شدن آنها جلوگیری شود، می توانند به لیست ignoreip اضافه شوند.
در اینجا باید آدرس IP محلی رایانه شخصی و سایر دستگاههای مورد نظر خود را در لیست سفید اضافه کنید.
خط را از ابتدا با ignoreip شروع کنید و آدرسهای IP خود را که با فاصله جدا شده اند ، اضافه کنید:
nano /etc/fail2ban/jail.local
ignoreip = 127.0.0.1/8 ::1 123.123.123.123 192.168.1.0/24
امیدواریم مقاله آموزش نصب و کانفیگ ابزار فیل تو بن برای شما عزیزان مفید بوده باشد.
داتیس نتورک را در شبکه های اجتماعی دنبال کنید.