再犯者をより重く再禁止する設定¶
複数回banされたアクセス元を、より厳罰に再禁止する設定を行います。
具体的にはfail2banのログ自体を監視して再犯のポリシーとマッチングします。
設定¶
再禁止のログ監視設定のポリシーはデフォルトで下記の場所にあります。
fail2banのログのパスやログ形式をカスタマイズしていなければ、そのまま利用することができると思います。
- /etc/fail2ban/filter.d/recidive.conf
特定の文字列を検出時にレコードを無視する場合、下記に設定を行う。ignoreregex = ↓ ignoreregex = .*(文字列1|文字列2)
次のアクセス制限の設定を行います。以下のファイルに追記していきます。
- /etc/fail2ban/filter.d/jail.local
[recidive] enabled = true filter = recidive logpath = /var/log/fail2ban/fail2ban.log action = iptables-allports[name=recidive] sendmail-whois-lines[name=recidive, logpath=/var/log/fail2ban/fail2ban.log] bantime = 604800 findtime = 86400 maxretry = 3
ここでは「recidive」という名前で設定を作り有効化します。
フィルタは前述の「filter.d/recidive.conf」を使用します。
次に監視するログのパス、banする時間(10800=1時間)、banするまでの間隔と試行回数(86400秒に3回)を指定します。
設定の有効化¶
fail2ban設定を再読み込みします。
# systemctl reload fail2ban
動作確認¶
iptablesにポリシーが追加されていることを確認します。
# iptables -L -n Chain f2b-recidive (1 references) target prot opt source destination REJECT all -- xxx.xxx.xxx.xxx 0.0.0.0/0 reject-with icmp-port-unreachable …… … RETURN all -- 0.0.0.0/0 0.0.0.0/0