logrotateコマンドでFail2banのログローテーションを行う。

[主題]
この投稿で導入したFail2banのログをローテーションする手順を説明したい。

[背景]
Fail2banは、自身の状態記録のため、ログファイルを持っている。また、このログファイルには、過去にBanしたIPが記録されており、繰り返される場合に、より厳しい条件でBanするためにも使われる。
このログファイルをローテーションするにあたり、できるだけ長い間、Fail2banが参照できるように設定するのが、本稿の目的である。
なお、ログローテーションには、この投稿で導入したlogrotateコマンドを用いる。

[環境]
参考までに、筆者の環境を記載しておく
MacBook Pro 2018 15.4inch(インテルMac)
macOS 13.4 Ventura
Xcode 14.3
CommandLine Tools for Xcode 14.3.0.0.1

MacBook Pro 2016 13inch(インテルMac)
mmacOS 12.6.6 Monterey
CommandLine Tools for Xcode 14.2.0.0.1

[設定]

  1. ローテーションするログの設定ファイルを置くディレクトリの準備

    sudo mkdir -p /etc/logrotate.d
  2. 設定ファイル準備

    cd /etc/logrotate.d
    sudo vim fail2ban

    記述する内容

    /var/log/fail2ban/fail2ban.log {
        missingok
            notifempty
        weekly
        rotate 4
        create 0644 root wheel
        postrotate
            /Library/Frameworks/Python.framework/Versions/3.11/bin/fail2ban-client set logtarget /var/log/fail2ban/fail2ban.log 2> /dev/null || true
        endscript
    }
  3. Fail2banログファイルの場所変更

    sudo mkdir -p /var/log/fail2ban
    cd /var/log
    sudo mv fail2ban.log fail2ban
    sudo fail2ban-client set logtarget /var/log/fail2ban/fail2ban.log
  4. jail.localの編集

    cd /etc/fail2ban/
    sudo vim jail.local

    変更内容

    -logpath = /var/log/fail2ban.log
    +logpath = /var/log/fail2ban/fail2ban.log*

    Fail2ban設定変更の反映

    sudo fail2ban-client reload

以上。

この投稿へのコメント

コメントはありません。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

この投稿へのトラックバック

トラックバックはありません。

トラックバック URL