Fail2Ban گزینه ای عالی برای دفع حملات brute force به سرور شماست

fail2ban

یکی از رایج ترین وکتورهای حمله به سرورها ، تلاش برای ورود به سیستم brute force است. اینجاست که مهاجمان سعی می کنند به سرور شما دسترسی پیدا کنند و بی نهایت نام کاربری و رمزهای عبور را امتحان کنند.

برای این نوع مشکلات سریعترین و م solutionثرترین راه حل ، محدود کردن تعداد تلاشها و مسدود کردن دسترسی کاربر یا آن IP است برای یک زمان خاص همچنین مهم است که بدانید برای این کار برنامه های منبع باز نیز وجود دارد که به طور خاص برای دفاع در برابر این نوع حمله طراحی شده اند.

در پست امروز ، من به شما معرفی می کنم یکی Fail2Ban نام دارد. در ابتدا توسط Cyril Jaquier در سال 2004 توسعه داده شد ، Fail2Ban یک چارچوب نرم افزار جلوگیری از نفوذ است که از سرورها در برابر حملات brute force محافظت می کند.

درباره Fail2ban

Fail2ban پرونده های ورود به سیستم را اسکن می کند (/ var / log / apache / error_log) و IP هایی را که فعالیت های مخرب نشان می دهند ، منع می کند ، مانند گذرواژه های بسیار معیوب و جستجوی آسیب پذیری ها و غیره

به طور کلی، Fail2Ban برای به روزرسانی قوانین فایروال برای رد کردن آدرس های IP استفاده می شود برای مدت زمان مشخصی ، اگرچه هر اقدام خودسرانه دیگری (به عنوان مثال ، ارسال ایمیل) نیز می تواند پیکربندی شود.

نصب Fail2Ban در Linux

Fail2Ban در بیشتر مخازن توزیع های اصلی لینوکس و به طور خاص در بیشتر مورد استفاده برای سرورها مانند CentOS ، RHEL و اوبونتو یافت می شود.

در مورد اوبونتو ، برای نصب فقط موارد زیر را تایپ کنید:

sudo apt-get update && sudo apt-get install -y fail2ban

در حالی که در مورد Centos و RHEL ، آنها باید موارد زیر را تایپ کنند:

yum install epel-release
yum install fail2ban fail2ban-systemd

اگر SELinux دارید ، مهم است که سیاست ها را با موارد زیر به روز کنید:

yum update -y selinux-policy*

پس از انجام این کار ، آنها باید در پیش زمینه بدانند که پرونده های پیکربندی Fail2Ban در / etc / fail2ban هستند.

پیکربندی Fail2Ban عمدتا به دو پرونده اصلی تقسیم می شود؛ اینها fail2ban.conf و jail.conf هستند. fail2ban.con فایل بزرگتر پیکربندی Fail2Ban است ، جایی که می توانید تنظیماتی مانند:

  • سطح ورود به سیستم
  • پرونده برای ورود به سیستم
  • پرونده سوکت فرآیند.
  • پرونده pid

jail.conf محلی است که گزینه هایی مانند این را پیکربندی می کنید:

  • پیکربندی خدمات برای دفاع.
  • چه مدت باید آنها را مورد حمله قرار داد.
  • آدرس ایمیل برای ارسال گزارش
  • اقدامی که هنگام شناسایی حمله انجام می شود.
  • مجموعه ای از پیش تنظیم شده مانند SSH.

پیکر بندی

حالا می خواهیم به قسمت پیکربندی برویم ، اولین کاری که ما می خواهیم انجام دهیم کپی پشتیبان از پرونده jail.conf خود با:

cp -pf /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

و ما اکنون با nano ویرایش می کنیم:

nano /etc/fail2ban/jail.local

در داخل ما به بخش [پیش فرض] می رویم که می توان برخی تنظیمات را انجام داد.

در اینجا در بخش "ingoreip" آدرس های IP وجود دارد که کنار گذاشته می شوند و آنها توسط Fail2Ban کاملاً نادیده گرفته می شوند ، این اساساً IP سرور (محلی) و سایر مواردی است که فکر می کنید باید نادیده گرفته شوند.

از آنجا به بیرون IP های دیگر که دسترسی ناموفق داشته باشند ، در معرض ممنوعیت قرار گرفتن قرار دارند و منتظر بمانید که چند ثانیه ممنوع شود (به طور پیش فرض 3600 ثانیه است) و fail2ban فقط پس از 6 تلاش ناموفق عمل می کند

پس از پیکربندی کلی ، اکنون سرویس را نشان خواهیم داد. Fail2Ban قبلاً فیلترهای از پیش تعریف شده ای برای خدمات مختلف دارد. بنابراین فقط برخی از سازگاری ها را انجام دهید. به عنوان مثال:

[ssh] enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 6

با انجام تغییرات مربوطه ، در نهایت باید مجدداً Fail2Ban را بارگیری کنید:

service fail2ban reload
systemctl enable firewalld
systemctl start firewalld

با انجام این کار ، بیایید یک بررسی سریع انجام دهیم تا ببینیم Fail2Ban در حال اجرا است:

sudo fail2ban-client status

IP را خاموش کنید

اکنون که ما با موفقیت یک IP را ممنوع کردیم ، اگر بخواهیم IP را منع کنیم ، چه می کنیم؟ برای انجام این کار ، ما می توانیم دوباره از fail2ban-client استفاده کنیم و به آن بگوییم که یک IP خاص را خاموش کند ، مانند مثال زیر.

sudo fail2ban-client set ssh unbanip xxx.xxx.xx.xx

جایی که "xxx ...." این آدرس IP است که شما نشان می دهید.


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

اولین کسی باشید که نظر

نظر خود را بگذارید

نشانی ایمیل شما منتشر نخواهد شد.

*

*

  1. مسئول داده ها: میگل آنخل گاتون
  2. هدف از داده ها: کنترل هرزنامه ، مدیریت نظرات.
  3. مشروعیت: رضایت شما
  4. ارتباط داده ها: داده ها به اشخاص ثالث منتقل نمی شوند مگر با تعهد قانونی.
  5. ذخیره سازی داده ها: پایگاه داده به میزبانی شبکه های Occentus (EU)
  6. حقوق: در هر زمان می توانید اطلاعات خود را محدود ، بازیابی و حذف کنید.

bool (درست)