Baculaは統合バックアップツールですが、公式HPを見ると改ざん検知機能もあるので、今回はその検証を行います。
公式HPの機能説明ページ

機能としては、取得済みのカタログデータとジョブ稼働時のカタログデータを比較することで差分を検出しています。
差分・増分バックアップの判定に必須の機能なので、以前からあった機能を人間が見て分かるように手を加えて出力しているわけです。

改ざん検知に必要なBaculaコンポーネントはバックアップに使用する場合と同じです。
本研究所のBacula導入記事をご確認ください。

公式説明に従って監視設定をしていきます。
既にバックアップ用の初期設定を完了している場合、変更が必要なのはマスターサーバの/etc/bacula/bacula-dir.confのみです。

念のため作業前にバックアップを取得して監視ジョブを設定していきます。

# cp -p /etc/bacula/bacula-dir.conf /etc/bacula/bacula-dir.conf.yyyymmdd

# vi /etc/bacula/bacula-dir.conf

 

作成したジョブを稼働させる前に、カタログデータの初期化を行う必要があります。

# bconsole

* run

しばらく待ってからジョブステータスを確認します。

* status dir

これでbaculaの方は準備が整いました。

検知テストのため、クライアントの監視ディレクトリ配下に以下のファイル・操作を用意しておきます。
・ファイルの新規作成
・既存ファイルの変更
・既存ファイルの削除

準備がすべて整ったので、監視ジョブを稼働させます。
# bconsole
* run

ジョブ結果ログを確認します。

# tail -f /var/log/bacula/bacula.log

または

# bconsole
* messages

新規作成、変更、削除をすべて検知成功しています。

定期的にチェックするのであれば、/etc/bacula/bacula-dir.confにジョブの稼働タイミングを入力してメッセージの転送設定をすればOKです。

変更内容の確認後には、忘れずにカタログの初期化を行いましょう。

初期化しないと、ジョブ稼働毎に同じ検知内容を含むアラートメッセージが出ます。

 

まとめ

・Baculaはバックアップ、改ざん検知どちらもできる、専用のスクリプトを組めば改ざん検知⇒バックアップから復旧まで全自動でできそうです。

・改ざん検知を定期運用するのであれば、カタログ初期化のスクリプトもあると便利そうです。

 

今回の検証はここまで。