Cum pot șterge toate interdicțiile fail2ban din Ubuntu? Am încercat totul, dar nu-l înțeleg.

Vreau doar să șterg toate interdicțiile – dar nu cunosc nicio adresă IP.

Comentarii

  • Interdicțiile se fac de obicei pe adresele IP prin firewall-ul dvs., așa că ar trebui să vă uitați la regulile firewall-ului.
  • da, știu. dar vreau să șterg toate interdicțiile fără să spun o adresă IP
  • Am încercat totul ” nu nu ‘ t. Ce ați încercat?

Răspuns

Răspuns actualizat

Începând cu versiunea 0.10. 0 fail2ban-client include comanda unban care poate fi utilizată în două moduri:

unban --all unbans all IP addresses (in all jails and database) unban <IP> ... <IP> unbans <IP> (in all jails and database) 

Mai mult, comenzile restart <JAIL>, reload <JAIL> și reload au acum opțiunea --unban.

Răspuns vechi

fail2ban folosește iptables pentru a bloca traficul. Dacă doriți să vedeți adresele IP care sunt blocate în prezent, tastați

iptables -L -n 

și căutați diferitele lanțuri numite fail2ban-something, unde something indică închisoarea fail2ban (de exemplu, Chain f2b-sshd se referă la închisoarea sshd). Dacă doriți doar să eliminați blocul pentru o singură adresă IP <IP> pentru o închisoare dată <JAIL>, fail2ban oferă propriul său client:

fail2ban-client set <JAIL> unbanip <IP> 

Alternativ puteți utiliza numerele de linie. Mai întâi, enumerați regulile iptables cu numere de linie:

iptables -L -n --line-numbers 

Apoi puteți utiliza

iptables -D fail2ban-somejail <linenumber> 

pentru a elimina o singură linie din tabel. Din câte știu, nu există nicio opțiune pentru a selecta o gamă de numere de linie, așa că cred că va trebui să înfășurați această comandă într-o buclă for:

for lin in {200..1}; do iptables -D fail2ban-somejail $lin done 

Aici am făcut numărul 200. Verificați propria ieșire a comenzii cu --line-numbers și rețineți că ultima linie (cu RETURN) ar trebui să rămână. Vedeți comentariul lui @roaima de mai jos pentru raționamentul din spatele numărării în jos.

Comentarii

  • M-ați salvat. Mulțumesc mult. Vă rugăm să adăugați o comandă pentru că a trebuit să-mi dau seama că am nevoie de clientul fail2ban în fruntea comenzii tale. (Pentru că sunt un noob)

Răspunde

Cel mai bun mod de a anula toate IP-urile este să setați bantime la 1 secundă, apoi tot IP-ul va fi eliberat imediat.

fail2ban-client set JailName bantime 1 

După aceea, puteți seta timpul de interzicere corect.

Este mai bine să lăsați fail2ban să facă unban pentru dvs. Nu modificați manual iptables.

Comentarii

  • Acesta este singurul răspuns corect aici. Fail2ban își păstrează propria bază de date de interzicere care trebuie ștearsă independent Fiecare răspuns care vorbește despre ștergerea regulilor iptables ignoră faptul că în momentul în care fail2ban este reluat, va adăuga din nou regulile pe care tocmai le-ați șters în iptables. De asemenea, nu toate configurațiile fail2ban folosesc iptables pentru a implementa interdicții.
  • găsiți toate închisorile cu fail2ban-client status
  • Tocmai am emis această comandă și urmăresc cum numărul IP-urilor din închisoarea mea scade spre zero pe măsură ce fail2ban procesează închisoarea. se întâmplă foarte repede, dar ‘ e OK, au existat peste cinci mii de intrări în închisoare. Răspuns bun!

Răspuns

Cel mai recent cel mai recent fail2ban-client (0.10) are o comandă unban -all. Închisorile pot fi, de asemenea, „repornite” individual, efect eliminarea banilor.

Dacă aveți o versiune mai veche, acest truc ar putea funcționa pentru interdicțiile temporare automate: ștergeți închisoarea care conține interdicția, apoi reporniți fail2ban, astfel încât închisoarea (acum goală) să fie recreată.

$ fail2ban-client stop sshd Jail stopped $ systemctl restart fail2ban 

Comentarii

  • -all sau —all? Sau –all?

Răspuns

  1. Oprirea serviciului va curăța toate regulile adăugate de fail2ban

    service fail2ban stop 
  2. Dacă nu aveți alte reguli iptables, le puteți spăla

    iptables -F 

Aveți grijă: acest lucru va șterge orice alte reguli din iptables .

Comentarii

  • Doar oprirea și pornirea din nou au fost suficiente.

Răspuns

Salvează configurația iptabilă în fișier

$ iptables-save > iptables.conf 

Editați-l cu orice editor doriți decât să încărcați config înapoi la iptables

$ iptables-restore < iptables.conf 

Nu uitați să stocați configurația în iptables, astfel încât să fie selectată până la repornire

$ service iptables save iptables: Saving firewall rules to /etc/sysconfig/iptables:[ OK ] 

Răspuns

iată un oneliner simplu pentru a dezbina întregul fail2ban jail în mod corect:

iptables -L f2b-recidive -n | grep -o "[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}" | grep -v 0.0.0.0 | xargs -n 1 fail2ban-client set recidive unbanip 

NOTĂ: comanda iptables ia prefixul „f2b-” înainte de numele închisorii în timp ce „fail2ban-client” numele real al închisorii

Comentarii

  • Acesta este cel mai bun răspuns pentru versiunile fail2ban de mai jos 0.10. Puteți merge mai departe creând un alias în .bashrc, cum ar fi fail2ban-purge, cu un parametru pentru a purja o închisoare întreagă. Doar înlocuiți cuvântul recidiv de mai sus cu $ 1 și utilizați alias ca fail2ban-purge < JAIL_NAME >.

Răspuns

Datorită modului în care funcționează fail2ban, există doar două soluții posibile:

  • Creați un script de configurare firewall care să includă fail2ban închisori și reporniți firewall-ul.
  • Eliminați regulile firewallului care blochează adresele IP pe care doriți să le anulați. .

Răspuns

Acesta este scriptul pe care îl folosesc pentru a anula toate adresele IP pentru o închisoare ssh ( pur și simplu înlocuiți ocurența sshd cu numele închisorii de care aveți nevoie … ex. mysqld-auth)

#!/bin/bash j=$(iptables -L f2b-sshd | grep -c "REJECT") for ((i=1;i<=j;i++)) do fail2ban-client set sshd unbanip $(fail2ban-client status sshd | grep "Banned IP list:" | cut -c23-) done 

Răspundeți

Poate că acest script ar putea ajuta pe cineva cu o versiune < 0.10.0 ca mine:

 #!/bin/bash for JAIL in $(fail2ban-client status | grep "Jail list:" | awk "BEGIN {FS="\t"} {print $2}" | sed "s/, / /g") do for IP in $(fail2ban-client status ${JAIL} | grep "Banned IP list:" | awk "BEGIN {FS="\t"} {print $2}" | sed "s/ /\n/g") do fail2ban-client set ${JAIL} unbanip ${IP} done done unset JAIL IP exit 0  

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *