Come posso eliminare tutti i divieti di fail2ban in Ubuntu? Ho provato di tutto ma non lo capisco.

Vorrei solo eliminare tutti i ban, ma non conosco alcun indirizzo IP.

Commenti

  • I ban sono tipicamente fatti sugli indirizzi IP attraverso il tuo firewall, quindi dovresti guardare le regole del firewall.
  • si lo so. ma voglio cancellare tutti i divieti senza indicare un indirizzo IP
  • Ho provato di tutto ” no non hai ‘ t. Cosa hai provato?

Risposta

Risposta aggiornata

A partire dalla versione 0.10. 0 fail2ban-client include il comando unban che può essere utilizzato in due modi:

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

Inoltre, i comandi restart <JAIL>, reload <JAIL> e reload ora hanno anche lopzione --unban.

Vecchia risposta

fail2ban utilizza iptables per bloccare il traffico. Se desideri visualizzare gli indirizzi IP attualmente bloccati, digita

iptables -L -n 

e cerca le varie catene denominate fail2ban-something, dove something punta alla prigione fail2ban (ad esempio, Chain f2b-sshd si riferisce alla prigione sshd). Se desideri rimuovere il blocco solo per un singolo indirizzo IP <IP> per una determinata jail <JAIL>, fail2ban offre il proprio client:

fail2ban-client set <JAIL> unbanip <IP> 

In alternativa puoi utilizzare i numeri di riga. Innanzitutto, elenca le iptables regole con i numeri di riga:

iptables -L -n --line-numbers 

Successivamente puoi utilizzare

iptables -D fail2ban-somejail <linenumber> 

per rimuovere una singola riga dalla tabella. Per quanto ne so non esiste unopzione per selezionare un intervallo di numeri di riga, quindi immagino che dovresti racchiudere questo comando in un ciclo for:

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

Qui ho creato il numero 200. Controlla il tuo output del comando con --line-numbers e nota che lultima riga (con RETURN) dovrebbe rimanere. Vedi il commento di @roaima di seguito per il ragionamento alla base del conto alla rovescia.

Commenti

  • Mi hai salvato. Grazie mille. Aggiungi un comando completo perché ho dovuto capire che avevo bisogno di fail2ban-client prima del tuo comando. (Perché sono un noob)

Risposta

Il modo migliore per sbloccare tutti gli IP è impostare il bantime a 1 secondo, quindi tutto lIP verrà liberato immediatamente.

fail2ban-client set JailName bantime 1 

Dopodiché puoi reimpostare il tempo di ban appropriato.

È meglio lasciare che fail2ban esegua il blan per te. Non modificare manualmente iptables da solo.

Commenti

  • Questa è lunica risposta corretta qui. Fail2ban mantiene il proprio database di ban che deve essere cancellato indipendentemente . Ogni risposta che parla delleliminazione delle regole di iptables ignora che nel momento in cui viene avviato il backup di fail2ban, le regole che hai appena eliminato verranno nuovamente aggiunte a iptables. Inoltre, non tutte le configurazioni di fail2ban utilizzano iptables per implementare i ban.
  • trova tutte le jail con fail2ban-client status
  • Ho appena emesso questo comando e sto osservando il numero di IP nella mia prigione diminuire verso zero mentre fail2ban elabora la prigione. Non lo fa è successo molto velocemente, ma ‘ va bene, cerano più di cinquemila voci in prigione. Buona risposta!

Risposta

latest fail2ban-client (0.10) ha un comando unban -all. Le jail possono anche essere “riavviate” singolarmente, effecti azzerare vivamente i ban.

Se hai una versione precedente, questo trucco potrebbe funzionare per i ban temporanei automatici: elimina la jail che contiene il ban e riavvia fail2ban in modo che la jail (ora vuota) venga ricreata.

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

Commenti

  • -all o —all? Oppure –all?

Answer

  1. Larresto del servizio cancellerà tutte le regole aggiunte di fail2ban

    service fail2ban stop 
  2. Se non hai altre regole di iptables, puoi scaricarlo

    iptables -F 

Fai attenzione: cancellerà qualsiasi altra regola nel tuo iptables .

Commenti

  • Basta fermarsi e poi ricominciare da capo.

Risposta

Salva iptable config su file

$ iptables-save > iptables.conf 

Modificalo con qualsiasi editor che ti piace Quindi carica la configurazione di nuovo su iptables

$ iptables-restore < iptables.conf 

Non dimenticare di memorizzare la configurazione allinterno di iptables in modo che venga selezionata al riavvio

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

Risposta

ecco un semplice oneliner per sbloccare il tutto fail2ban jail nel modo corretto:

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 

NOTA: il comando iptables accetta il prefisso “f2b-” prima del nome della jail mentre “fail2ban-client” il vero nome della jail

Commenti

  • Questa è la migliore risposta per le versioni fail2ban sotto la 0.10. Puoi andare oltre creando un alias in .bashrc come fail2ban-purge con un parametro per eliminare unintera jail. Basta sostituire la parola recidiva sopra con $ 1 e utilizzare lalias come fail2ban-purge < JAIL_NAME >.

Risposta

A causa del modo in cui funziona fail2ban, ci sono solo due possibili soluzioni:

  • Crea uno script di configurazione del firewall che includa fail2ban jail e riavvia il firewall.
  • Rimuovi le regole del firewall che bloccano gli IP che desideri sbloccare .

Risposta

Questo è lo script che sto utilizzando per sbloccare tutti gli indirizzi IP per una prigione ssh ( sostituisci semplicemente sshd occourence con il nome della jail che ti serve … ad es. 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 

Answer

Forse questo script potrebbe aiutare qualcuno con una versione < 0.10.0 come me:

 #!/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  

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *