سؤال كيفية إلغاء حجب IP بشكل صحيح مع Fail2Ban


أنا أستخدم Fail2Ban على الخادم وأنا أتساءل عن كيفية إلغاء حظر IP بشكل صحيح.

أعلم أنه يمكنني العمل مع IPTables مباشرةً: iptables -D fail2ban-ssh <number>

ولكن ليس هناك طريقة للقيام بذلك مع fail2ban-client؟

في الأدلة تشير إلى شيء من هذا القبيل: fail2ban-client get ssh actionunban <IP>. لكن هذا لا يعمل.

أيضا ، أنا لا أريد ذلك /etc/init.d/fail2ban restart لأن ذلك من شأنه أن يفقد كل الحظر في القائمة.


164
2018-06-29 11:43


الأصل




الأجوبة:


مع Fail2Ban قبل v0.8.8:

fail2ban-client get YOURJAILNAMEHERE actionunban IPADDRESSHERE

مع Fail2Ban v0.8.8 والإصدارات الأحدث:

fail2ban-client set YOURJAILNAMEHERE unbanip IPADDRESSHERE

الجزء الصعب هو العثور على السجن الصحيح:

  1. استعمال iptables -L -n للعثور على اسم القاعدة ...
  2. ...ثم استخدام fail2ban-client status للحصول على أسماء السجن الفعلية. قد لا يكون اسم القاعدة واسم السجن متشابهين ولكن يجب أن يكون واضحا أيهما مرتبط به.

230
2017-11-29 21:59



إذا كان لديك الخطأ التالي 'Invalid Action name'، اقرأ هذا الجواب - Morgan Courbet
مع الإصدارات الأخيرة من fail2ban يجب أن تستخدم fail2ban-client set JAIL_NAME unbanip 1.2.3.4. - tftd
ما هو اسم السجن الافتراضي؟ /etc/fail2ban/jail.conf لا يعمل بالنسبة لي. - Alex W
يمكنك العثور على اسم السجن في سجل fail2ban إذا كنت تبحث عن IP الخاص بك - fred727
كان sshd اسم السجن بالنسبة لي. - agustaf


منذ v0.8.8 هناك unbanip اختيار (actionunban ليس لهذا الغرض) يمكن تشغيلها من قبل set الأمر ، إذا نظرت إلى قائمة الخيارات ، سترى بناء الجملة. لذلك سيكون (عن ظهر قلب ، يرجى التحقق):

fail2ban-client set ssh-iptables unbanip IPADDRESSHERE 

أكثر عامة:

fail2ban-client set JAILNAMEHERE unbanip IPADDRESSHERE

يعمل لدي


81
2018-02-04 08:25



تمت إضافة الأمر unbanip في الإصدار 0.8.8. الحل الأفضل إذا كنت تستخدم 0.8.8 أو أحدث. - Alexander Garden
المشكلة المتعلقة بهذا في تعقب fail2ban هو: github.com/fail2ban/fail2ban/issues/132 - Aseques
هذه هي الإجابة الصحيحة للإصدارات الحالية. شكرا جزيلا! - billynoah
الحصول على "أمر غير صالح (لم يتم تنفيذ أي إجراء أو لم يتم تنفيذه بعد)" - Tom
تحتاج إلى ذكر اسم jailname الصحيح (على سبيل المثال sshd أو sshd-dos ، راجع سجل fail2ban الخاص بك) - mirage


مثال على SSH في الوضع التفاعلي.

اكتب bash:

fail2ban-client -i

ثم في نمط الوضع التفاعلي ، اقرأ حالة السجن:

status sshd

سوف تحصل على:

Status for the jail: ssh
|- Filter
|  |- Currently failed: 0
|  |- Total failed: 6
|  `- File list:    /var/log/auth.log
`- Actions
   |- Currently banned: 1
   |- Total banned: 2
   `- Banned IP list:   203.113.167.162

ثم اكتب في الوضع التفاعلي fail2ban:

set sshd unbanip 203.113.167.162

سوف تحصل على:

203.113.167.162

لم يعد يعني ذلك 203.113.167.162 في قائمة الحظر.


41
2018-02-28 13:55



بالنسبة لي كان اسم السجن sshd (أوبونتو 16) - scipilot
على الألغام ، وتقول الكلية المحظورة: 6 ، ولكن القائمة تحت الملكية الفكرية المحظورة فارغة فقط :( يجب أن درب من خلال سجلات - William Hilsum


إجابة أوكودا خاطئة:

مكالمة fail2ban-client بدون معلمات وسترى قائمة بالأوامر الممكنة:

get JAIL actionunban ACT             

هذا يحصل على الأمر unan للعمل ACT لـ JAIL.

ننظر إلى المعلمة الإجراء للسجن الذي حددته ، وربما لديك عمل iptables وربما بعض أكثر مثل sendmail ، whois أو أيا كان. لذلك في حالة كان الإجراء الخاص بك iptables سيبدو مثل هذا:

fail2ban-client get JAIL actionunban iptables

والجواب سيكون:

iptables -D fail2ban-NAME -s IP -j DROP

وسوف تظهر لك فقط ما سيكون لك أن تكتب عن unpan. لا يوجد أمر unan نفسه.


21
2018-01-13 15:13



نعم ، هذا العمل بالنسبة لي ، لفرض الحظر من سجن SSH iptables -D fail2ban-ssh -s <IP> -j DROP. شكرا ingo! - Deele


إذا تم حظر 192.168.2.1

sudo iptables -L

تحقق من السلسلة التي تم حظرها على سبيل المثال.

سلسلة fail2ban-sasl (1 مراجع)

إسقاط كل - 192.168.2.1 في أي مكان

ثم:

# to view the proper command for un-banning
sudo fail2ban-client get sasl actionunban
# actual command
iptables -D fail2ban-sasl -s 192.168.2.1 -j DROP

8
2018-01-24 14:04





باستخدام fail2ban v.0.8.6:

$ sudo fail2ban-client status # to reveal your JAIL name (mine is ssh)
$ sudo fail2ban-client set ssh delignoreip your_ip_address
$ sudo nano /etc/hosts.deny # delete your ip address
$ sudo fail2ban-client reload

4
2017-09-30 12:18



هذا يفترض أن hosts.deny كان هو الإجراء المستخدم .... لكنه لا يزال أكثر فائدة من الأشياء التي تحاول تغيير طريقة عناوين IP غير المرغوب فيها على الإصدارات الأقدم باستخدام actionunban... - Gert van den Berg


تحتاج أولاً إلى الحصول على اسم السجن. يمكنك الحصول على القائمة (في معظم الحالات سوف يكون سجون ssh فقط):

fail2ban-client status

بعد الحصول على اسم السجن يمكنك التحقق من عناوين IP التي يتم تجاهلها.

fail2ban-client get ssh ignoreip

إذا كان عنوان IP الخاص بك في قائمة التجاهل ، يمكنك حذفه عبر:

fail2ban-client set ssh delignoreip your_ip_address
vi /etc/hosts.deny

أزل إدخال المضيف:

fail2ban-client reload

4
2017-09-09 11:20



قائمة التجاهل هي قائمة من عناوين IP لا تحظرها أبدًا. هذا غير مرتبط تمامًا بقائمة عناوين IP المحظورة حاليًا ، وهي القائمة التي تريد OP إزالة عنوان IP منها. - jlh


للأسف مع الإصدار 0.8.2 من fail2ban-client الأمر:

fail2ban-client get jail actionunban ipaddress

لا يعمل. لحل المشكلة ، أفضل خيار هو ترقية fail2ban إلى أحدث إصدار واستخدام خيار جديد:

unbanip

2
2018-06-21 18:35





إذا كان عنوان IP في سجون متعددة ، فإن هذا يصبح ألمًا.

خط واحد لإزالة 192.168.1.2 من جميع السجون:

 for jail in $(fail2ban-client status | grep 'Jail list:' | sed 's/.*Jail list://' | sed 's/,//g'); do fail2ban-client set $jail unbanip 192.168.1.2; done

برنامج نصي لفعل الشيء نفسه https://gist.github.com/yolabingo/c810db6fe7f8bfcb9eb4f6ffc531e474


0
2017-11-02 20:59