CentOS7 Web Application Firewall(ModSecurity)のインストール

CentOS7 Apache httpd 環境で、Web Application Firewall(WAF)を導入するには、以下の手順で作業を実施します。

本説明では、すでに Apache httpd 環境が構築ずみであることを前提とします。

ModSecurityのインストール

# yum install mod_security mod_security_crs

初期導入のための設定

上記方法でインストールし、httpdを再起動することでModSecurity(WAF)が有効になります。
しかし、初期状態のままでは疑わしい通信すべてを遮断してしまいますので、検出のみ行うように設定を変更します。

# cp -p /etc/httpd/conf.d/mod_security.conf /etc/httpd/conf.d/mod_security.conf-org

# vi /etc/httpd/conf.d/mod_security.conf
 # Default recommended configuration
 # SecRuleEngine On ←コメントアウト
 SecRuleEngine DetectionOnly ←検知のみに設定を変更

WAF(ModSecurity)の有効化

検知のみに設定を変更したら、以下のコマンドで ModSecurityを有効にします。

# systemctl restart httpd

WAF(ModSecurity)を有効にすると以下のログファイルが記録されます。

# tail /var/log/httpd/modsec_audit.log

ここに記録された内容とルールを確認し、動作しているWebアプリケーションの動作を阻害しないルール設定を行い本番運用に入ることになります。