当社はIT技術のオンライン教育を得意としたセミナー専門会社です。 | 一戸英男

ITエンジニアの技術力UPをお約束します。

AWS bitnami (LAMP)環境でmod_security(WEB APPLICATION FIREWALL)の導入

AWSの環境でLAMP入れている環境でWAF(mod_security2)を導入する作業があった。bitnamiのLAMPは最初からWEBサーバがチューニングされていて手っ取り早く下手なコンフィグをユーザ自身が行うより全然良いものです。一方ではやはりオリジナリティが高いため、AWSのbitnami特有のディレクトリ構成になっている。また、bitnami固有のコマンドで操作するためUbuntuの標準的なWEBサーバのコマンドは利用できない。有効にするのに少し面倒くさくa2enmodは使えません。

mod_securityのインストール

標準的なインストールは簡単です。AWSのLAMPはUbuntuが古いためmod_securityが古く最新のCRSも使えなく、新しいバージョン入れたい人はコンパイルしたほうが良い。今回は面倒くさいのでOS標準をそのまま使うことにした。

パッケージインストールは至ってシンプルでこれだけ。

設定をイネーブルするには?

bitnami環境はフォルダー構造やはり独特ですね。パッケージをインストールするとconfファイルがbitnami配下と/etc/modsecurityの両方にできる。/home/bitnami/stack/apache2/confの配下にあるhttpd.confがグローバル設定の本体なのでまずはこの設定の中を編集してゆく。bitnami直下のmodesecurity.confは無視とする。

細かいルール用読み込み設定をmodsecurity2に施す。

WEBサーバを再起動します。

再起動後に反映がうまく行ってれば/home/bitnami/stack/apache2/logsの配下にmodsec_audit.logが出来ているはずです。初期はデバッグログも有効にしてmodsec_debug.logも閲覧できるようにしたほうが設定ミスや失敗がわかりやすくて良いと思います。

モジュールのロード状況の確認