Ubuntu Linuxですべてのfail2ban禁止を削除します


16

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

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


1
通常、禁止はファイアウォールを介してIPアドレスに対して行われるため、ファイアウォールルールを確認する必要があります。
ジュリーペレティエ

はい、知っています。しかし、私はIPアドレスを告げずにすべての禁止を解除したいです
パトリック

回答:


26

更新された回答

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

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-somethingsomethingfail2banの刑務所へのポイントは、(例えば、Chain f2b-sshd刑務所を参照sshd)。<IP>特定のjailの単一のIPアドレスのブロックのみを削除する場合<JAIL>、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のコメントを参照してください。


ありがとう@roaima!それに応じて答えを更新します。
ph0t0nix

1
@roaimaはい(少なくともzshとbashの場合):echo {5..1}結果はになり5 4 3 2 1ます。
ph0t0nix

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

古い返信はまだDuckDuckGoにキャッシュされ、@ roaimaと同じことを言うようになりました-snipboard.io/0oZkXy.jpg
アリ

14

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

fail2ban-client set JailName bantime 1

その後、適切な禁止期間を設定し直すことができます。

fail2banがあなたのためにアンバンをするようにした方が良いです。自分でiptablesを手動で編集しないでください。


1
これが唯一の正解です。Fail2banは、個別にクリアする必要がある独自の禁止データベースを保持しています。iptablesルールの削除に関するすべての回答は、fail2banがバックアップを開始した瞬間に、削除したばかりのルールをiptablesに再び追加することを無視しています。また、すべてのfail2ban構成が禁止を実装するためにiptablesを使用するわけではありません。
クリフアームストロング

3
すべての刑務所を見つけるfail2ban-client status
フライオン

私はこのコマンドを発行したばかりで、fail2banが刑務所を処理するにつれて、刑務所内のIPの数がゼロに向かって減少するのを監視しています。それは本当に速く起こるわけではありませんが、それは大丈夫です。刑務所には5000以上のエントリがありました。いい答えです!
エリックM

4

最新fail2ban-client(0.10)がありunban -all、コマンドを。刑務所は個別に「再開」でき、事実上禁止を解除できます。

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

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

-allまたは—all?または-すべて?
ワイルドカード

3

iptable configをファイルに保存します

$ iptables-save > iptables.conf

設定をiptablesに戻すよりも、好きなエディターで編集してください

$ iptables-restore < iptables.conf

iptables内に構成を保存することを忘れないでください。再起動時にピックアップされます。

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

これは、これを行う方法の1つです。ありがとう。
User9102d82

3

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

service fail2ban stop

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

iptables -F

注意してください:これにより、iptablesの他のルールが消去されます。


3

fail2ban刑務所全体を適切な方法で禁止解除するための単純なonelinerがあります:

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-」プレフィックスを取り、「fail2ban-client」は実際のjail名を取ります


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

2

fail2ban動作方法により、考えられる解決策は2つだけです。

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

2

これは、私がssh刑務所のすべてのIPアドレスの禁止を解除するために使用しているスクリプトです(sshdの出現を必要な刑務所の名前に置き換えるだけです。例えば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
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.