はじめに
サイトの改竄などの被害が相次いでおり、ついこの前にもニュースで流れていました。
この記事ではサイトの改竄を検知が出来る Tripwire の設定と、また Tripwire のレポートを Slack のインテグレーションを使って受け取る方法についても紹介します。
ここでの構成例
Webサーバー:さくらのVPS(OS:Ubuntu 20.04)
メールサーバー:さくらのメールボックス
DNS例
Webサーバーのドメイン: example.com
Slackインテグレーションのメールアドレス: tripwire@example.slack.com
Postfixのインストール + 設定を変更
リレー先(さくらのメールサーバー)のユーザー名とパスワードを追記します。
Tripwireのインストール
サイトキーパスフレーズ と ローカールキーパスフレーズ を決めるので、忘れないように控えておきます。
設定ファイルの変更
暗号化
ポリシーファイル(twpol.txt)
DocumentRoot( /var/www/html
)に対して監視をして、 LaravelのSessionファイルは除外する 場合です。
暗号化
差分DBの初期化
Tripwireの実行
--email-report / -M
を付けると、ファイルに変更があった場合(= Total violations foundが1以上の場合)にメールを送信されます。
例えばなんらかのファイルを変更すると・・・
メールが送信されます。
cronの設定
UbuntuにインストールするとCronが入れているので、それを編集します。
+
の部分を追記
毎回初期化をすることによって、以前検出された変更点は検出されなくなります。
💡
「tripwire --update」 にしない理由 updateコマンドはレポートファイルを参照しその差分を取り込むコマンド。 毎回レポートファイルを参照してacceptしていくのは面倒なので、毎回初期化しています。
まとめ
サイトの改竄を検知が出来る Tripwire を使うことにより、例え改竄をされても検知して早急に対応することにより被害を最小限の抑えることが出来ます。
改竄させないような仕組みを作ることがまず重要ですが、さらに最小限に抑える仕組みを組み込むことが次に重要になると思います。