1. 概要
「fail2ban」のログは、下記の状態です。
-rw------- 1 root:wheel /var/log/fail2ban.log
これを、サブディレクトリへ移動して、パーミッションを変更し、1日1回ローテーションさせます。
以下、すべて「root」ユーザ権限で。
2. 移動・権限設定
下記へ移動して、誰でも読めるようにします。
/var/log/fail2ban/fail2ban.log
mkdir -p /var/log/fail2ban
chown -R root:wheel /var/log/fail2ban
touch /var/log/fail2ban/fail2ban.log
chmod 644 /var/log/fail2ban/fail2ban.log
vi /usr/local/etc/fail2ban/fail2ban.local
(監視設定が、「jail.local」で、本体設定が「fail2ban.local」)
下記を記述します。
[Definition]
logtarget = /var/log/fail2ban/fail2ban.log
設定をチェックして、再起動。
fail2ban-client -d
service fail2ban restart
「jail.local」のみの変更であれば、「reload」で十分ですが、本体へ影響がある場合は、「restart」が必要です。
3. ローテーション
1日1回ローテーションさせ、30日分保持します。
vi /usr/local/etc/newsyslog.conf.d/fail2ban.conf
下記を記述します。
# logfilename [owner:group] mode count size when flags [/pid_file] [sig_num]
/var/log/fail2ban/fail2ban.log 644 30 * @T00 B
内容が正しく設定されているか確認します。
newsyslog -nv -f /usr/local/etc/newsyslog.conf.d/fail2ban.conf
下記のような出力になれば(日付は実行時の翌日)、正常です。
Processing /usr/local/etc/newsyslog.conf.d/fail2ban.conf
/var/log/fail2ban/fail2ban.log <30>: --> will trim at Sat Feb 28 00:00:00 2026
4. 参考サイト
本ページは、「Gemini」伍長を参考にさせていただきました。