毎回Fail2Banを再起動せずにIPアドレスのブロックを解除しようとしていますが、これを行う最善の方法は何ですか?または、便利なガイドの方向に私を向けることができますか?
下に表示されているように、削除しようとしているIPアドレスは89.31.259.161です。
# iptables -L -n
Chain INPUT (policy DROP)
target prot opt source destination
fail2ban-Apache-badbots tcp -- 0.0.0.0/0 0.0.0.0/0 multiport dports 80,443
fail2ban-httpd tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
fail2ban-sasl tcp -- 0.0.0.0/0 0.0.0.0/0 multiport dports 25,465,143,220,993,110,995
fail2ban-SSH tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:22
fail2ban-httpd tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:443
fail2ban-httpd tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
fail2ban-vsftpd tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:21
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 multiport dports 80,443,25,465,110,995,143,993,587,465,21,20,2855
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:54000
Chain FORWARD (policy DROP)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Chain fail2ban-SSH (1 references)
target prot opt source destination
RETURN all -- 0.0.0.0/0 0.0.0.0/0
Chain fail2ban-Apache-badbots (1 references)
target prot opt source destination
RETURN all -- 0.0.0.0/0 0.0.0.0/0
Chain fail2ban-httpd (3 references)
target prot opt source destination
DROP all -- 89.31.259.161 0.0.0.0/0
DROP all -- 89.31.259.161 0.0.0.0/0
RETURN all -- 0.0.0.0/0 0.0.0.0/0
RETURN all -- 0.0.0.0/0 0.0.0.0/0
RETURN all -- 0.0.0.0/0 0.0.0.0/0
Chain fail2ban-sasl (1 references)
target prot opt source destination
RETURN all -- 0.0.0.0/0 0.0.0.0/0
Chain fail2ban-vsftpd (1 references)
target prot opt source destination
RETURN all -- 0.0.0.0/0 0.0.0.0/0
実行できました:iptables -D fail2ban-httpd -s 89.31.259.161 -j DROP
ただし、これによって削除された行は1つだけです。
チェーン内のルールの行番号を示すリストを取得するには、iptablesの--line-numbers
オプションを使用します。
iptables -L fail2ban-SSH -v -n --line-numbers
Chain fail2ban-SSH (1 references)
num pkts bytes target prot opt in out source destination
1 19 2332 DROP all -- * * 193.87.172.171 0.0.0.0/0
2 16 1704 DROP all -- * * 222.58.151.68 0.0.0.0/0
3 15 980 DROP all -- * * 218.108.224.81 0.0.0.0/0
4 6 360 DROP all -- * * 91.196.170.231 0.0.0.0/0
5 8504 581K RETURN all -- * * 0.0.0.0/0 0.0.0.0/0
次に、iptables -D chain rulenum
を使用して、不要なものを削除します。
iptables -D fail2ban-SSH 1
削除します
1 19 2332 DROP all -- * * 193.87.172.171 0.0.0.0/0
上記の例の行。すべてが再番号付けされているため、同じコマンドを再度実行して、チェーン内の新しいルール1を削除できることに注意してください。
私のFail2banの経験から、IPTABLESを介して直接IPアドレスの禁止を解除すると、Fail2banサービスが禁止時間内に再開された場合、IPはFail2banによって再び禁止されます。
つまり、Fail2banによって禁止されたIPアドレスの禁止を解除する最も効果的でクリーンな方法は、fail2ban-clientを使用することです。
ステップ1:Fail2banログをチェックして刑務所名をメモします
Sudo zgrep 'Ban' /var/log/fail2ban.log
出力例:
2017-11-03 04:30:14,509 fail2ban.actions [25091]:NOTICE [nginx-badbots] Ban 47.15.15.49 2017-11-03 04:37:29,597 fail2ban.actions [27065]:NOTICE [nginx-badbots]禁止103.31.87.187 2017-11-03 04:37:30,124 fail2ban.actions [27065]:通知[nginx-badbots]禁止201.33.170.251 2017-11-03 04:37:30,364 fail2ban.actions [27065]:通知[ nginx-badbots] Ban 47.15.15.49 2017-11-03 04:38:06,754 fail2ban.actions [27065]:NOTICE [vsftpd] Ban 128.20.12.68
IPアドレス(128.20.12.68)の禁止を解除することに関心がある場合、Jailの名前はvsftpdです。
手順2:fail2ban-clientを使用してIPアドレスの禁止を解除します。一般的な形式は次のとおりです。
Sudo fail2ban-client set [JAIL] unbanip [xx.xx.xx.xx]
今、実行します:
Sudo fail2ban-client set vsftpd unbanip 128.20.12.68
出力例:
128.20.12.68
ステップ3:Fail2banログから禁止解除を確認する
Sudo tail -f /var/log/fail2ban.log
出力例:
2017-11-03 04:38:13,332 fail2ban.actions [27065]:通知[vsftpd]アンバン128.20.12.68