ModSecurity3.3下載安裝教程

superjack2發表於2020-04-29

系統:              centos 7.x

nginx :              nginx-1.1 7 . 3 .tar.gz

modsecurity :        modsecurity-3.0.0.tar.gz

nginx-modsecurity:       ModSecurity-nginx-master.zip   (nginx modsecurity 的聯結器 )

Owasp:            owasp-modsecurity-crs-3.2-dev  (ModSecurity 官方免費規則 )

(一 modsecurity 安裝)

系統依賴:

yum -y install libtool   libtool-ltdl-devel gcc gcc-c++ pcre-devel zlib-devel libxml2-devel libxslt-devel gd-devel perl perl-devel perl-ExtUtils-Embed GeoIP GeoIP-devel GeoIP-data libatomic_ops-devel   openssl   openssl-devel   autoconf automake

 

Modsecurity   安裝

[root@localhost ~]# tar xf modsecurity-v3.0.0.tar.gz

[root@localhost ~]# cd modsecurity-v3.0.0

# 如果 GeoIP 是自己下載的 tar.gz 包就執行

[root@localhost modsecurity-v3.0.0]# ./configure --with-geoip=/usr/local/GeoIP   && make && make install

# 如果 GeoIP yum 安裝就執行  ./configure   && make && make install

  make 編譯時,如果 gcc 4.8 以下版本,會報錯如圖所示:

            解決辦法:將gcc 升級到 4.8 以上版本。

ModSecurity-nginx : 安裝

Cd /opt/apps

unzip ModSecurity-nginx-master.zip

mv ModSecurity-nginx-master /usr/local/modsecurity-nginx

 

Nginx : 安裝

cd /opt/apps

tar -zxvf nginx-1.16.1.tar.gz

cd nginx-1.16.1/

./configure --add-module=/usr/local/modsecurity-nginx

make && make install

 

nginx + ModSecurity-nginx : 配置

/usr/local/nginx conf 下建立資料夾 modsecurity

cd /usr/local/modsecurity/

cp modsecurity.conf-recommended  /usr/local/nginx/conf/modsecurity/modsecurity.conf

cp unicode.mapping  /usr/local/nginx/conf/modsecurity

nginx.conf : 配置

http server 節點中新增以下內容(在 http 節點新增表示全域性配置,在 server 節點新增表示為指定網站配置)

vim /usr/local/nginx/conf/nginx.conf

....

#error_log  logs/error.log;

#error_log  logs/error.log  notice;

#error_log  logs/error.log  info;

#pid        logs/nginx.pid;

http {

    #access_log  logs/access.log  main;

    ............

    server {

        listen       80;

        server_name  localhost;

        #access_log  logs/host.access.log  main;

        modsecurity on;  # 開啟 modsecurity

        location / {

            # 載入 modsecurity 配置檔案路徑

            modsecurity_rules_file /usr/local/nginx/modsecurity.conf;

            root   html;

            index  index.html index.htm;

        }

       .........

    }

}

 

配置owasp 規則檔案 :

cd /opt/apps

unzip owasp-modsecurity-crs-3.3-dev.zip

cd owasp-modsecurity-crs-3.3-dev

# 複製 crs-setup.conf.example /usr/local/nginx/conf/modsecurity/ 下並重新命名為 crs-setup.conf.

cp crs-setup.conf.example /usr/local/nginx/conf/modsecurity/crs-setup.conf

# 複製 rules 資料夾到 /usr/local/nginx/conf/modsecurity/

cp -r rules /usr/local/nginx/conf/modsecurity/

# 然後 cd /usr/local/nginx/conf/modsecurity/rules

mv REQUEST-900-EXCLUSION-RULES-BEFORE-CRS.conf.example REQUEST-900-EXCLUSION-RULES-BEFORE-CRS.conf

mv RESPONSE-999-EXCLUSION-RULES-AFTER-CRS.conf.example RESPONSE-999-EXCLUSION-RULES-AFTER-CRS.conf

 

modsecurity.conf : 配置

Vim  /usr/local/nginx/conf/modsecurity/modsecurity.conf

 

# 預設只是檢測,不攔截,可以修改配置,將

SecRuleEngine DetectionOnly   改為 =>  SecRuleEngine On

 

# 確保 ModSecurity 在記錄審計日誌時儲存請求體 IJ 改為 C

SecAuditLogParts ABIJDEFHZ   改為 = SecAuditLogParts ABCDEFHZ

 

# modsecurity.conf 的檔案末尾新增以下內容:

Include /usr/local/nginx/conf/modsecurity/crs-setup.conf

Include /usr/local/nginx/conf/modsecurity/rules/*.conf

 

最後重啟nginx 即可:

./nginx 





來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31537832/viewspace-2689106/,如需轉載,請註明出處,否則將追究法律責任。

相關文章