サーバー上の禁止されているIPをすべて表示するための簡単なコマンドは見つかりません。または、編集できるファイルはありますか?
Fail2banは、禁止するすべてのIPを入力するものだと思います。設定をどこで調整しますか?
Ufwを無効にした場合にのみ、リモートでサーバーにログインできます。自分の禁止を解除する方法を見つけることができないようです。そもそもなぜ私が禁止されたのかさえ分かりません。行われたすべての試行を表示するための何らかのログがありますか?
Sudo iptables -L INPUT -v -n | less
これにより、iptablesにINPUTチェーン内のすべてのルールを一覧表示し、詳細な数値出力を提供します。一度に1ページずつ取得できるように、パイプ処理を少なくしています。
ショートバージョン:
現在ブロックされているすべてのipsをリストします。
fail2ban-client status | grep "Jail list:" | sed "s/ //g" | awk '{split($2,a,",");for(i in a) system("fail2ban-client status " a[i])}' | grep "Status\|IP list"
iPの禁止を解除します。
fail2ban-client set postfix-mail unbanip 111.222.333.444
ロングバージョン:
そのための「公式」な方法を探している場合は、fail2banのコマンドラインクライアントがあります https://www.fail2ban.org/wiki/index.php/Commands :
~ # fail2ban-client status
Status
|- Number of jail: 8
`- Jail list: roundcube, sshd, sogo, postfix-sasl, postfix-mail, dovecot, ssh, sshd-ddos
その後、実行できます
~ # fail2ban-client status roundcube
Status for the jail: roundcube
|- filter
| |- File list: /var/log/mail.log
| |- Currently failed: 0
| `- Total failed: 12
`- action
|- Currently banned: 1
| `- IP list: 111.222.333.444
`- Total banned: 1
または、既存のすべてのjailを反復処理する私のコマンドを使用できます。
fail2ban-client status | grep "Jail list:" | sed "s/ //g" | awk '{split($2,a,",");for(i in a) system("fail2ban-client status " a[i])}' | grep "Status\|IP list"
どの出力:
Status for the jail: roundcube
| `- IP list:
Status for the jail: sshd
| `- IP list:
Status for the jail: sogo
| `- IP list:
Status for the jail: postfix-sasl
| `- IP list:
Status for the jail: postfix-mail
| `- IP list:
Status for the jail: dovecot
| `- IP list:
Status for the jail: ssh
| `- IP list:
Status for the jail: sshd-ddos
| `- IP list:
/var/log/fail2ban.log
を使用して、以前に禁止されたすべてのIPを確認できます
Sudo zgrep 'Ban' /var/log/fail2ban.log*
ただし、一部の禁止は一時的なものであるため、それらをキャンセルする最善の方法はわかりません(私のfail2banログは空なので、テストが難しくなります!)。 awk
コマンドを使用して大きなアカウンティングスキームに入ることができますが、かなり退屈になっています。
とにかく、それがあなたが禁止された理由を探しているなら、あなたがそれをしたい方法。
もう1つの方法は、IPテーブルを調べて、ドロップされているものを確認することです。繰り返しますが、これにはオーバーライドされるデフォルトルートが表示されますが、ソースが0.0.0.0/0のルールをブロックしているため、実際の使用に十分なほどきれいに保つため、これにはいくつかの問題があります。
Sudo iptables -L -n | awk '$1=="DROP" && $4!="0.0.0.0/0"'
しかし、これは禁止が起こった理由を説明しません。