লঞ্চার পণ্য Bitnami ডকুমেন্টেশনimaxe CLI ব্লগ যোগাযোগ
imaxe fail2ban ব্যান v1.0.0

ব্যান নিয়ন্ত্রণে, fail2ban না ছুঁয়েই

একটিমাত্র কমান্ড থেকে fail2ban-এর ব্যানগুলো দেখুন ও পরিচালনা করুন: কোন jail সক্রিয়, কে ব্যান হয়েছে দেখুন, হাতে-হাতে IP ব্যান বা আনব্যান করুন এবং প্রয়োজনে দ্রুত আনলক করুন। fail2ban-client-এর সিনট্যাক্স মনে রাখার দরকার নেই।

$ imaxe fail2ban status
সংস্করণ
v1.0.0
সাবকমান্ড
7
root প্রয়োজন
হ্যাঁ
JSON আউটপুট
status · banned · check
ব্যাকএন্ড
fail2ban-client

এই মডিউল কী করে #

fail2ban হলো সেই প্রহরী যে আপনার সার্ভারের লগ পর্যবেক্ষণ করে এবং ক্ষতিকর অ্যাক্সেসের চেষ্টা (যেমন SSH-এ বহুবার পাসওয়ার্ড ব্যর্থতা) শনাক্ত করলে অপরাধী IP-কে কিছু সময়ের জন্য স্বয়ংক্রিয়ভাবে ব্যান করে দেয়। পর্যবেক্ষণাধীন প্রতিটি সেবা একটি jail-এ সংগঠিত হয় (যেমন sshd)।

fail2ban মডিউল আপনাকে fail2ban-client-এর সিনট্যাক্স মনে না রেখেই রানটাইমে এই ব্যানগুলোর নিয়ন্ত্রণ দেয়: jail-গুলোর অবস্থা দেখুন, কে ব্যান হয়েছে তালিকাভুক্ত করুন, কোনো নির্দিষ্ট IP ব্লক হয়ে আছে কিনা যাচাই করুন, হাতে-হাতে ব্যান বা আনব্যান করুন, জরুরি অবস্থায় সব একসাথে আনলক করুন এবং কোনো পরিবর্তনের পর কনফিগারেশন পুনরায় লোড করুন।

শুরু করার আগে

এই মডিউল ইতিমধ্যে ইনস্টল করা ও চালু থাকা একটি fail2ban-এর ওপর কাজ করে। সব সাবকমান্ড সেবার অবস্থা দেখে বা পরিবর্তন করে, তাই এদের root সুবিধা দরকার (sudo ব্যবহার করুন)। আপনার নিজের IP-র কারণে বাইরে আটকে গেলে সরাসরি জরুরি আনলক-এ চলে যান।

দ্রুত নির্দেশিকাধাপে-ধাপে কাজ

সাধারণ কাজ #

আপনি কী করতে চান বেছে নিন। প্রতিটি রেসিপিতে কমান্ড লেখা রয়েছে — শুধু IP বা jail-টি আপনার নিজেরটা দিয়ে বদলান, আর কপি করুন-এ চাপ দিন।

1

অবস্থা ও jail দেখুন

এক নজরে দেখুন fail2ban সক্রিয় কিনা এবং কতজন ব্যান হয়েছে।

ubuntu ব্যবহারকারী দিয়ে SSH-এর মাধ্যমে আপনার সার্ভারে যুক্ত হয়ে সাধারণ অবস্থা জানতে চান:

terminal
$ sudo imaxe fail2ban status

স্ক্রিপ্ট বা প্যানেলের জন্য মেশিন-পাঠযোগ্য ফরম্যাটে চান? --json যোগ করুন:

terminal
$ sudo imaxe fail2ban status --json
সেবাটি সক্রিয় কিনা, jail-গুলোর তালিকা (যেমন sshd) এবং প্রতিটিতে কতটি IP ব্যান হয়েছে তা দেখতে পাবেন।
2

কোন IP ব্যান হয়েছে দেখুন

সব jail বা কোনো নির্দিষ্ট jail-এর সক্রিয় ব্যান তালিকাভুক্ত করুন।

সব jail-এর সমস্ত ব্যান হওয়া IP একসাথে:

terminal
$ sudo imaxe fail2ban banned

শুধু একটি jail-এ আগ্রহী? সেটি আর্গুমেন্ট হিসেবে দিন:

terminal
$ sudo imaxe fail2ban banned sshd
ব্লক হওয়া IP-গুলোর তালিকা পাবেন। কোনোটি বৈধ হলে সেটিকে ব্যান বা আনব্যান রেসিপিতে নিয়ে যান।
3

কোনো IP ব্যান হয়েছে কিনা যাচাই করুন

একটি নির্দিষ্ট ঠিকানা কোন কোন jail-এ ব্লক হয়ে আছে জেনে নিন।

সরাসরি IP নিয়ে জিজ্ঞাসা করুন; এটি কোন কোন jail-এ ব্যান হয়ে আছে তা জানিয়ে দেবে:

terminal
$ sudo imaxe fail2ban check 203.0.113.7
সেই IP ব্লক হয়ে আছে কিনা এবং কোন কোন jail-এ, তা তৎক্ষণাৎ জানবেন। অ্যাক্সেস সমস্যা রিপোর্ট করা কাউকে আনব্যান করার আগে এটি ব্যবহার করুন।
4

কোনো IP ব্যান বা আনব্যান করুন

অপব্যবহারকারী ঠিকানাকে হাতে-হাতে ব্লক করুন বা বৈধ ব্যবহারকারীকে মুক্ত করুন।

একটি নির্দিষ্ট jail-এ IP ব্যান করুন (যদি একটিমাত্র jail থাকে, সেটি নিজেই অনুমান করে নেওয়া হয়):

terminal
$ sudo imaxe fail2ban ban 203.0.113.7 --jail sshd

বৈধ কাউকে ব্যান করে ফেলেছেন? সব jail থেকে একসাথে তাকে আনব্যান করুন:

terminal
$ sudo imaxe fail2ban unban 203.0.113.7
পরিবর্তন সঙ্গে সঙ্গে কার্যকর হয়। সেই একই IP-তে imaxe fail2ban check দিয়ে নিশ্চিত করুন।
5

সব আনলক করুন (জরুরি)

আপনি বাইরে আটকে গেছেন: সব jail-এর সমস্ত IP মুক্ত করুন।

আপনার নিজের IP আটকে গেছে এবং এখনই অ্যাক্সেস ফিরে পেতে চান? সবগুলো আনব্যান করুন। নিশ্চিতকরণ এড়াতে --yes যোগ করুন:

terminal
$ sudo imaxe fail2ban unban-all --yes

jail কনফিগারেশনে পরিবর্তনের পর, তা কার্যকর করতে পুনরায় লোড করুন:

terminal
$ sudo imaxe fail2ban reload
সব jail ব্যানমুক্ত হয়ে যায়। এটি একটি সাময়িক ব্যবস্থা: অপব্যবহারকারীরা আবার চেষ্টা করলেই fail2ban তাদের পুনরায় ব্যান করবে।
unban-all নিয়ে সতর্ক থাকুন

এটি ব্যানের একটি ধ্বংসাত্মক অপারেশন: সব IP-কে ব্লকমুক্ত করে দেয়, ক্ষতিকরগুলোসহ। শুধু জরুরি অবস্থায় অ্যাক্সেস ফিরে পেতে এটি ব্যবহার করুন এবং পরে imaxe fail2ban status দিয়ে অবস্থা যাচাই করুন।

CLI রেফারেন্সকমান্ড, ফ্ল্যাগ ও ফাইল

সারসংক্ষেপ #

uso
imaxe fail2ban <subcomando> [<ip>|<jail>] [--jail JAIL] [flags]

সব সাবকমান্ডের root সুবিধা দরকার (sudo ব্যবহার করুন), কারণ এরা fail2ban-client-এর মাধ্যমে fail2ban-এর অবস্থা দেখে বা পরিবর্তন করে। মেশিন-পাঠযোগ্য, স্ক্রিপ্টিং-উপযোগী আউটপুট পেতে status, banned বা check-এ --json যোগ করুন।

সাবকমান্ড #

সাবকমান্ডকী করেপ্রাসঙ্গিক ফ্ল্যাগ
statusfail2ban-এর অবস্থা: সক্রিয় কিনা, jail এবং প্রতি jail-এ ব্যান হওয়া IP-র সংখ্যা।--json
bannedব্যান হওয়া IP তালিকাভুক্ত করে (সব jail বা কোনো নির্দিষ্ট jail)।--json
checkএকটি IP কোন কোন jail-এ ব্যান হয়ে আছে তা জানায়।--json
banএকটি jail-এ কোনো IP হাতে-হাতে ব্যান করে।--jail
unbanসব jail থেকে একটি IP আনব্যান করে।
unban-allজরুরি: সব jail-এর সমস্ত IP আনব্যান করে।--yes
reloadfail2ban-এর কনফিগারেশন পুনরায় লোড করে (jail.local যাচাই করে)।

আর্গুমেন্ট ও ফ্ল্যাগ #

আর্গুমেন্ট / ফ্ল্যাগধরনডিফল্টবিবরণ
<ip> আবশ্যকstringযে IP-র ওপর কাজ করা হবে। check, banunban-এ আবশ্যক।
<jail>stringসবbanned-এ তালিকাভুক্ত করার নির্দিষ্ট jail। আর্গুমেন্ট ছাড়া সব jail তালিকাভুক্ত হয়।
--jailstringautoban-এ, ব্যানের গন্তব্য jail। একটিমাত্র jail থাকলে সেটি নিজেই অনুমান করা হয়।
--yesboolfalseunban-all-এ, না জিজ্ঞেস করে নিশ্চিত করে (ব্যানের ধ্বংসাত্মক অপারেশন)।
--jsonboolfalsestatus/banned/check-এ, ফলাফল JSON হিসেবে stdout-এ দেয়।

ফাইল ও পাথ #

পাথবিষয়বস্তু
/etc/fail2ban/jail.localfail2ban-এর স্থানীয় কনফিগারেশন: সক্রিয় jail, ব্যানের সময় ও থ্রেশহোল্ড। যা reload যাচাই করে।
/var/run/fail2ban/fail2ban.sockযে কন্ট্রোল সকেটের মাধ্যমে fail2ban-client সেবার সঙ্গে কথা বলে।
/var/log/fail2ban.logfail2ban-এর নিজস্ব লগ: ব্যান, আনব্যান ও রিলোড।

এক্সিট কোড ও লগ #

প্রতিটি চালনা একটি কোড ফেরত দেয় যা echo $? দিয়ে যাচাই করা যায় — স্ক্রিপ্টে একসাথে চেইন করতে কাজে লাগে:

0OKঅপারেশন সঠিকভাবে সম্পন্ন হয়েছে।
1ERRশ্রেণিবিহীন সাধারণ ত্রুটি। লগ দেখুন।
2USAGEঅবৈধ বা অনুপস্থিত আর্গুমেন্ট।
3SERVICEfail2ban সক্রিয় নয় বা সকেটে সাড়া দিচ্ছে না।
4JAILনির্দেশিত jail বিদ্যমান নেই বা অনুমান করা যায়নি।
5RELOADকনফিগারেশন যাচাই হয়নি; রিলোড হয়নি।

ডিবাগ করার সময় লগ সরাসরি অনুসরণ করুন:

terminal
$ sudo journalctl -u fail2ban -f
$ sudo tail -f /var/log/fail2ban.log

সমস্যা সমাধান #

লক্ষণসম্ভাব্য কারণসমাধান
SERVICE (কোড 3) আসেfail2ban বন্ধ আছে বা সকেট সাড়া দিচ্ছে না।systemctl start fail2ban দিয়ে সেবা চালু করে আবার চেষ্টা করুন।
JAIL (কোড 4) আসে--jail-এর jail বিদ্যমান নেই বা একাধিক আছে এবং অনুমান করা যায় না।imaxe fail2ban status দিয়ে jail-গুলো দেখুন এবং --jail-এ সঠিকটি দিন।
RELOAD (কোড 5) আসেjail.local-এ সিনট্যাক্স ত্রুটি আছে।/etc/fail2ban/jail.local ঠিক করে আবার reload চালান।
SSH দিয়ে বাইরে আটকে গেছিআপনার নিজের IP-তে ব্যর্থতা জমে sshd-এ ব্যান হয়ে গেছে।অন্য উপায় থেকে, unban দিয়ে সেটি আনব্যান করুন বা unban-all --yes দিয়ে সবগুলো মুক্ত করুন।

Fail2ban মডিউল নিয়ে আটকে গেছেন?

«imaxe <module> status --json» এর আউটপুট সহ আমাদের লিখুন, আমরা দ্রুত উত্তর দেব।

সাপোর্টে যোগাযোগ করুন