mod_ruidとmod_securityの共存

mod_ruidとmod_securityを利用すると性質上ログが正常に取れない問題が発生した。
そのため対策方法を考えてみる。

# cat /var/log/httpd/audit_log
Audit log: Failed to create subdirectories: /var/asl/data/audit/20120617/20120617-1153 (Permission denied)

mod_ruidはそれぞれアクセスされたプログラムファイルのユーザ権限でApacheを動かすので先にディレクトリ”/var/asl/data/audit/日付/”を作製したユーザ以外のログが記録されないという問題が発生する。そのため、一つのファイルに全てのログを記録するように設定する。

SecAuditLogTypeをSerialと設定することにより1つのファイルでログを記録できる。
# vi /etc/httpd/modsecurity.d/modsecurity_crs_10_config.conf

SecAuditEngine RelevantOnly

SecRuleEngine On
#SecRuleEngine DetectionOnly

#SecAuditLogType Concurrent
SecAuditLogType Serial
SecAuditLog logs/audit_log
# SecAuditLogStorageDir logs/modsec_audit

今後のため一応ログ出力を強化しておく
# vi /etc/httpd/conf.d/mod_security.conf

# Debug Log.
SecDebugLog logs/modsec_debug_log
SecDebugLogLevel 1
 
# Log File.
LogFormat "%V %h %t %{UNIQUE_ID}e \"%r\" %>s %X | %I %O | %<{mod_security-time1}n %<{mod_security-time2}n %<{mod_security-time3}n %D" mperformance
CustomLog logs/modsec_performance_log mperformance

Leave a Comment


NOTE - You can use these HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

(Spamcheck Enabled)

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)