به نام خدا
در این پست قصد داریم نحوه ی تغییر بلاک کردن مهاجمان در fail2ban از REJECT به DROP را توضیح دهیم.
البته این آموزش در صورتی مورد استفاده می باشد که شما از فایروال iptables در سرور خود استفاده نمایید.
REJECT و DROP دو روش متفاوتی است که بیشتر فایروال ها برای مقابله با بسته های ممنوعه ارسالی یا دریافتی از آنها استفاده می نمایند.
تفاوت REJECT با DROP در ارسال اطلاعاتی است که برای فرستنده بسته ارسال می شود در REJECT بسته TCP Reset يا ICMP Error توسط firewall به source بسته فرستاده می شود. اما در حالت DROP فرستنده هیچ اطلاعاتی از سرنوشت بسته ای که فرستاده است دریافت نمی کند.
fail2ban به صورت پیشفرض از REJECT استفاده می نماید. علت تغییر از REJECT به DROP بستگی به سیاست مدیر سرور در اداره سرور خود دارد ولی شایع ترین علت می تواند به این خاطر باشد در حالت DROP هیچ ترافیکی ایجاد نشده و در جواب به آی پی های مهاجم عملا ترافیکی مصرف نمی شود که این مساله باعث می شود حملات مهاجمین باعث کندی سرعت سرور و یا سایت نصب شده روی سرور که میتواند سایت چت روم و یا گیم سرور باشد که عملا ترافیک سایت مساله ی مهمی برای این دو کاربری می باشد نشود.
در ادامه مطلب روش جایگزینی REJECT به DROP در fail2ban را به شما توضیح خواهیم داد.
در این مقاله فرض بر این شده که خواننده از نحوه نصب و فعالیت fail2ban اطلاع دارد اگر اطلاعات کافی در این زمینه ندارید مختصری در این مورد باید گفت fail2ban یک بسته امنیتی سیستم عامل لینوکس و سرور های مبتنی بر این سیتم عامل می باشد که با بررسی فایل های لاگ سیستم آی پی ها مهاجم را تشخیص داده و مهاجمان را بلاک می نماید.
روش تغییر REJECT به DROP در fail2ban به شکل زیر می باشد.
با استفاده از دستور زیر به پوشه action.d بروید.
cd /etc/fail2ban/action.d/
با دستور زیر وجود یک از دو فایل iptables-common.conf یا iptables-blocktype.conf برسی نمایید.
ls
هرکدام از این فایل ها که وجود داشت با ویرایشگر nano و یا vi فایل را جهت ویرایش باز کنید.
خط زیر را بیابید.
blocktype = REJECT --reject-with icmp-port-unreachable
به دو صورت می توانید روش بلاک را به DROP تغییر دهید.
روش اول جایگزینی کد زیر
#blocktype = REJECT --reject-with icmp-port-unreachable blocktype = DROP
و روش دوم جایگزینی
blocktype = DROP
می باشد در روش اول مزیت این است که با قرار دادن # ابتدای خط دستور اجرا نمی شود ولی به صورت یاداشت در فایل ذخیره می ماند که اگر روزی قصد بازگشت به REJECT را داشتیدکار برای شما آسان تر خواهد بود.
تغییرات را سیو نمایید و ویرایشگر را ببندید.
سرویس fail2ban را ری استارت نمایید. دستور restart در نسخه های مختلف لینوکس فرق می کند اگر از سیستم عامل سنتوس استفاده می نمایید می توان از دستور زیر استفاده کرد.
service fail2ban restart
میتوانید در اکثر توزیع های لینوکس از دستور زیر استفاده کنید.
systemctl restart fail2ban.service
در پایان دوستان اگر سوال و یا درخواست آموزش نصب سرویس fail2ban را دارند(آموزش مناسبی به زبان فارسی یافت نمی شود) می توانند از طریق نظرات اعلام نمایند تا پاسخگو دوستان باشیم.
این مقاله پیش زمینه ای برای مقاله ی مقابله با پورت اسکنر ها می باشد. در آینده مقاله ای برای مقابله با پورت اسکنر ها با استفاده از fail2ban در این سایت قرار خواهد گرفت.