Ubuntuですべてのfail2ban禁止を削除するにはどうすればよいですか?すべて試しましたが、うまくいきません。

すべての禁止を削除したいのですが、IPアドレスがわかりません。

コメント

  • 通常、禁止はファイアウォールを介したIPアドレスで行われるため、ファイアウォールのルールを確認する必要があります。
  • はい、わかっています。しかし、IPアドレスを言わずにすべての禁止をクリアしたい
  • " すべてを試しました "いいえ' t。何を試しましたか?

回答

回答の更新

バージョン0.10以降。 0 fail2ban-clientは、次の2つの方法で使用できるunbanコマンドを備えています。

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

さらに、restart <JAIL>reload <JAIL>、およびreloadコマンドにも--unbanオプション。

古い回答

fail2banはiptablesを使用してトラフィックをブロックします。現在ブロックされているIPアドレスを確認したい場合は、

iptables -L -n 

と入力し、fail2ban-something、ここでsomethingはfail2ban刑務所を指します(たとえば、Chain f2b-sshdは刑務所sshd)。特定の刑務所<JAIL>の単一のIPアドレス<IP>のブロックのみを削除する場合、fail2banは独自のクライアントを提供します。

fail2ban-client set <JAIL> unbanip <IP> 

または、行番号を使用することもできます。まず、iptablesルールを行番号とともにリストします。

iptables -L -n --line-numbers 

次に使用できます

iptables -D fail2ban-somejail <linenumber> 

テーブルから1行を削除します。私の知る限り、行番号の範囲を選択するオプションはないので、このコマンドをforループでラップする必要があると思います。

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

ここで私は200番を作りました。 --line-numbersを使用してコマンドの独自の出力を確認し、最後の行(RETURN)をそのままにしておく必要があることに注意してください。カウントダウンの背後にある理由については、以下の@roaimaのコメントを参照してください。

コメント

  • あなたは私を救ってくれました。どうもありがとう。完全なコマンドを追加してくださいあなたのコマンドの前にfail2ban-clientが必要だと理解しなければならなかったからです。(私は初心者なので)

回答

すべてのIPの禁止を解除する最善の方法は、禁止時間を1秒に設定することです。そうすると、すべてのIPがすぐに解放されます。

fail2ban-client set JailName bantime 1 

その後、適切な禁止時間を元に戻すことができます。

fail2banに禁止解除を行わせることをお勧めします。自分でiptablesを手動で編集しないでください。

コメント

  • これが唯一の正解です。Fail2banは独自の禁止データベースを維持しており、個別にクリアする必要があります。 。iptablesルールの削除について話しているすべての回答は、fail2banがバックアップを開始した瞬間に、削除したルールをiptablesに再度追加することを無視します。また、すべてのfail2ban構成がiptablesを使用して禁止を実装するわけではありません。
  • fail2ban-client status
  • ですべての刑務所を検索する

  • このコマンドを発行したところ、fail2banが刑務所を処理するにつれて、刑務所内のIPの数がゼロに向かって減少するのを監視しています。非常に高速に発生しますが、' OK、刑務所には5000を超えるエントリがありました。良い答えです!

回答

最新のfail2ban-client(0.10)にはunban -allコマンド。刑務所は個別に「再起動」することもできます、効果的禁止を完全にクリアします。

古いバージョンを使用している場合、このトリックは自動一時禁止で機能する可能性があります。禁止を含むjailを削除してから、fail2banを再起動して、(現在は空の)jailが再作成されるようにします。

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

コメント

  • -すべてまたは-すべて?または–all?

回答

  1. サービスを停止すると、追加されたすべてのルールが削除されますby fail2ban

    service fail2ban stop 
  2. 他にiptablesルールがない場合は、フラッシュできます

    iptables -F 

注意:これにより、iptables内の他のルールがすべて消去されます

コメント

  • 停止してから再開するだけで十分でした。

回答

iptable設定をファイルに保存

$ iptables-save > iptables.conf 

configをiptablesにロードするよりも好きなエディターで編集する

$ iptables-restore < iptables.conf 

iptables内に構成を保存して、選択されるようにすることを忘れないでください再起動時に起動

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

回答

ここに全体の禁止を解除するための簡単なワンライナーがありますfail2ban jailの適切な方法:

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 

注:iptablesコマンドはjail名の前に「f2b-」プレフィックスを付けますが、実際のjail名は「fail2ban-client」です

コメント

  • これは、0.10以下のfail2banバージョンのベストアンサーです。さらに、fail2ban-purgeのようなエイリアスを1つのパラメーターで作成して、jail全体をパージできます。上記の受信ワードを$ 1に置き換え、エイリアスをfail2ban-purge < JAIL_NAME >として使用します。

回答

fail2banの動作方法のため、考えられる解決策は2つだけです。

  • fail2ban刑務所を含むファイアウォール構成スクリプトを作成し、ファイアウォールを再起動します。
  • 禁止を解除するIPをブロックしているファイアウォールルールを削除します。 。

回答

これは、ssh刑務所のすべてのIPアドレスの禁止を解除するために使用しているスクリプトです( sshd occourenceを必要なjailの名前に置き換えるだけです…例: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 

回答

このスクリプトは、私のようなバージョン< 0.10.0のユーザーに役立つ可能性があります:

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

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です