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
0 Comments.