fail2ban は設定は、色々なログから不正なアクセスを検出して、ban するIPを登録していく。
基本的な設定方法を書いておく。
① 定義をする
/etc/fail2ban/jail.conf に、任意の名前と定義を行う。
以下の例では、
syslog をチェックして、/etc/fail2ban/jail.d/ufw.conf の定義でIPをban していく
[ufw] enabled = true filter = ufw action = iptables-allports logpath = /var/log/syslog bantime = -1 findtime = 3d maxretry = 3 ignoreip = xxx.xxx.xxx.xxx
② フィルタを設定する
/etc/fail2ban/jail.d/ufw.conf にログからbanしたいIP (不正アクセスをしてくるIP)を抽出する定義をする。
正規表現で抽出する。<HOST>に対象のIPが入るように定義をする。
vscode 等でログを表示しながら、検索で正規表現を定義していくとわかりやすい。
[INCLUDES] before = common.conf [Definition] failregex = UFW LIMIT BLOCK.* SRC=<HOST> DST
③ 定義の確認
正しくフィルタができているか確認する。
fail2ban-regex ログファイル名 フィルタファイル名
fail2ban-regex /var/log/syslog /etc/fail2ban/jail.d/ufw.conf
Running tests
=============
Lines: 657 lines, 0 ignored, 465 matched, 192 missed
④ fail2ban を再起動して有効化
sudo systemctl restart fail2ban-service
⑤ 状態確認
全体的なステータスの確認
sudo fail2ban-client status
個別の設定毎の確認は、後ろにjail名を
sudo fail2ban-client status ufw
コメント