Jak mohu odstranit všechny zákazy fail2ban v Ubuntu? Vyzkoušel jsem všechno, ale nechápu to.

Chci pouze smazat všechny zákazy – ale neznám žádné adresy IP.

Komentáře

  • Zákazy se obvykle provádějí na adresách IP prostřednictvím brány firewall, proto byste se měli podívat na pravidla brány firewall.
  • ano, já vím. ale chci vymazat všechny zákazy, aniž bych řekl IP adresu
  • Zkoušel jsem všechno “ ne, ‚ t. Co jste vyzkoušeli?

Odpověď

Aktualizovaná odpověď

Od verze 0.10. 0 fail2ban-client obsahuje příkaz unban, který lze použít dvěma způsoby:

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

Kromě toho nyní mají restart <JAIL>, reload <JAIL> a reload příkazy také možnost --unban.

Stará odpověď

fail2ban používá k blokování provozu iptables. Pokud chcete zobrazit aktuálně blokované adresy IP, zadejte

iptables -L -n 

a vyhledejte různé řetězce s názvem fail2ban-something, kde something ukazuje na vězení fail2ban (například Chain f2b-sshd odkazuje na vězení sshd). Pokud chcete odstranit blok pouze pro jednu IP adresu <IP> pro dané vězení <JAIL>, fail2ban nabízí svého vlastního klienta:

fail2ban-client set <JAIL> unbanip <IP> 

Alternativně můžete použít čísla řádků. Nejprve uveďte pravidla iptables s čísly řádků:

iptables -L -n --line-numbers 

Dále můžete použít

iptables -D fail2ban-somejail <linenumber> 

k odebrání jednoho řádku z tabulky. Pokud vím, neexistuje možnost vybrat rozsah čísel řádků, takže myslím, že byste tento příkaz museli zabalit do smyčky for:

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

Zde jsem vytvořil číslo 200. Zkontrolujte svůj vlastní výstup příkazu pomocí --line-numbers a nezapomeňte, že poslední řádek (s RETURN) by měl zůstat. Důvody pro odpočítávání naleznete níže v komentáři @roaima.

Komentáře

  • Zachránili jste mě. Děkuji moc. Přidejte prosím celý příkaz protože jsem musel přijít na to, že před tvým velením potřebuji fail2ban-client. (Protože jsem noob)

Odpovědět

Nejlepší způsob, jak zrušit zákaz všech IP adres, je nastavit bantime na 1 sekundu, poté se ihned uvolní veškerá IP adresa.

fail2ban-client set JailName bantime 1 

Poté můžete nastavit správný čas zákazu zpět.

Je lepší nechat fail2ban udělat unban za vás. Sami si iptables ručně neupravujte.

Komentáře

  • Toto je jediná správná odpověď. Fail2ban si udržuje vlastní databázi zákazů, kterou je třeba vymazat samostatně . Každá odpověď, která hovoří o mazání pravidel iptables, ignoruje, že v okamžiku, kdy je záložní program fail2ban spuštěn, znovu přidá pravidla, která jste právě odstranili, zpět do iptables. Také ne každá konfigurace fail2ban používá iptables k implementaci zákazů. najít všechny vězení s fail2ban-client status
  • právě jsem vydal tento příkaz a sleduji, jak se počet IP adres ve vězení snižuje směrem k nule, jak fail2ban zpracovává vězení. stalo se opravdu rychle, ale ‚ s, ve vězení bylo více než pět tisíc záznamů. Dobrá odpověď!

Odpověď

Poslední nejnovější fail2ban-client (0,10) má a unban -all příkaz. Vězení lze také jednotlivě „restartovat“, efekt jasné odstranění zákazů.

Pokud máte starší verzi, tento trik může fungovat pro automatické dočasné zákazy: odstraňte vězení, které obsahuje zákaz, a poté restartujte fail2ban, aby bylo znovu vytvořeno (nyní prázdné) vězení.

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

Komentáře

  • -all nebo —all? Nebo –all?

Odpověď

  1. Zastavení služby vymaže všechna přidaná pravidla by fail2ban

    service fail2ban stop 
  2. Pokud nemáte žádná další pravidla iptables, můžete je vyprázdnit

    iptables -F 

Buďte opatrní: toto vymaže všechna další pravidla ve vašich iptables .

Komentáře

  • Stačí pouze zastavit a znovu začít.

Odpověď

Uložit soubor iptable do souboru

$ iptables-save > iptables.conf 

Upravte jej pomocí libovolného editoru, který se vám líbí, než načtěte konfiguraci zpět do iptables

$ iptables-restore < iptables.conf 

Nezapomeňte uložit konfiguraci do iptables, aby byla vybrána až po restartu

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

Odpovědět

je zde jednoduchá jednorázová linka pro zrušení zákazu celého Fail2ban vězení správným způsobem:

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 

POZNÁMKA: Příkaz iptables přebírá před jménem vězení předponu „f2b-„, zatímco „fail2ban-client“ skutečné jméno vězení

Komentáře

  • Toto je nejlepší odpověď pro verze fail2ban pod 0,10. Můžete pokračovat v vytváření aliasů v .bashrc jako fail2ban-purge s jedním parametrem a vyčistit tak celé vězení. Jednoduše nahraďte recidivní slovo výše $ 1 a použijte alias jako fail2ban-purge < JAIL_NAME >.

Odpověď

Kvůli způsobu, jakým fail2ban funguje, existují pouze dvě možná řešení:

  • Vytvořte konfigurační skript brány firewall, který obsahuje fail2ban vězení, a restartujte bránu firewall.
  • Odstraňte pravidla brány firewall blokující adresy IP, které chcete zrušit. .

Odpověď

Toto je skript, který používám k odblokování všech adres IP pro vězení ssh ( jednoduše nahraďte sshd occourence názvem vězení, které potřebujete … např. 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 

odpověď

Možná by tento skript mohl někomu pomoci s verzí < 0.10.0 jako já:

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

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *