Mod-Security

基於每個事務更改 ModSecurity 日誌記錄

  • March 23, 2015

我正在嘗試跟踪對共享託管伺服器上的網站發出的所有請求。數據包擷取太麻煩了。

我們使用 Mod Security (2.8) 效果很好,雖然由於負載我們只啟用了有限的日誌記錄

SecAuditEngine RelevantOnly
SecAuditLogRelevantStatus "^(?:5|4(?!04))"

我真的不想記錄整個伺服器的所有內容,只是為了檢查這台虛擬主機的情況。我試過設置

SecAuditEngine On

…在 .htaccess 文件中,它會產生 500 內部錯誤,error_log 指示在 .htaccess 中不允許使用這些指令,儘管在 Modsec 文件中這些指令的範圍都顯示為“任何”

我什至嘗試過創建一個簡單的 SecRule:

SecRule SERVER_NAME "example\.com" "phase:1,ctl:SecAuditEngine=On,id:123456789"

但這會產生語法錯誤,並且看起來 SecAuditEngine 或 SecAuditLogRelevantStatus 無法動態切換。

有誰知道是否可以在每個請求的事務時間修改這兩個指令中的任何一個?

這可以通過使用 apache 模板系統在使用者或域的基礎上更改 SecAuditEngine 指令來實現。在 cPanel 伺服器上,這可以通過將 *.conf 文件放在以下位置來實現:

/usr/local/apache/conf/userdata/std/2/username/modsec.conf /usr/local/apache/conf/userdata/ssl/2/username/modsec.conf

內容:

<LocationMatch .*>
   SecAuditEngine On
</LocationMatch>

“開”設置告訴 mod security 記錄所有響應程式碼的事務數據(由於路徑不同,404/401 除外)

引用自:https://serverfault.com/questions/628053