שאלה כיצד Unban IP כראוי עם Fail2Ban


אני משתמש Fail2Ban בשרת ואני תוהה איך unban 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 לפני v.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
זה היה בשבילי שם הכלא. - agustaf


מאז v.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, אבל הרשימה תחת ה- IP אסר רק ריק :( יש לעקוב אחר דרך יומני - William Hilsum


התשובה של אוקודה טועה:

התקשר fail2ban-client ללא פרמטרים ואתה רואה רשימה של פקודות אפשריות:

get JAIL actionunban ACT             

זה מקבל את הפקודה unban לפעולה ACT עבור JAIL.

תסתכל בפרמטר הפעולה של הכלא שהגדרת, אתה כנראה יש פעולה iptables ואולי קצת יותר כמו sendmail, whois או מה שלא יהיה. אז במקרה הפעולה שלך היה iptables זה ייראה כך:

fail2ban-client get JAIL actionunban iptables

והתשובה תהיה:

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

זה רק להראות לך מה היית צריך לכתוב עבור unban. אין פקודה unban עצמו.


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 הפניות)

DROP כל - 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 הוא בכלא מרובים זה הופך להיות כאב.

one-liner להסיר 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