上篇文章總結了VM中CentOS7下OpenWAF的源碼安裝步驟 --> OpenWAF學習筆記(一)—— 安裝,接下來就是簡單的入門使用。
發布應用,需要配置 OpenWAF 的接入規則,配置文件位置:/opt/OpenWAF/conf/twaf_access_rule.json,OpenWAF的接入規則和nginx的配置結合,達到發布應用的目的。
接入規則配置簡要說明
{
"twaf_access_rule": [
"rules": [ -- 注意先后順序
{
"ngx_ssl": false, -- nginx 認證的開關
"ngx_ssl_cert": "path", -- nginx 認證所需 PEM 證書地址
"ngx_ssl_key": "path", -- nginx 認證所需 PEM 私鑰地址
"host": "1.1.1.1", -- 域名/IP,正則匹配,WAF地址
"path": "/", -- 路徑,正則匹配
"port": 80, -- 端口,默認 80
"server_ssl": false, -- 后端服務器 ssl 開關
"forward": "server_5", -- 后端服務器 upstream 名稱
"forward_addr": "1.1.1.2", -- 后端服務器ip地址,即需要防護的目標網站地址
"forward_port": "8080", -- 后端服務器端口號(缺省80),即需要防護的目標網站端口
"uuid": "access_567b067ff2060", -- 用來標記此規則的 uuid,api 中會用到,要保證全局唯一
"policy": "policy_uuid" -- 安全策略 ID
}
]
}
}
OpenWAF使用Nginx配置
個人使用的OpenWAF提供的Nginx配置文件,配置文件位置:/etc/ngx_openwaf.conf(默認監聽 80 端口)
對應修改 /opt/OpenWAF/conf/twaf_access_rule.json 文件中第一條接入規則的值,即需防護的目標網站IP和端口,"forward_addr"、"forward_port"。
修改配置信息之后啟動Nginx
#啟動nginx命令
/usr/local/openresty/nginx/sbin/nginx -c /etc/ngx_openwaf.conf
#停止nginx命令
/usr/local/openresty/nginx/sbin/nginx -c /etc/ngx_openwaf.conf -s stop
啟動Nginx之后訪問WAF地址即可。(訪問1.1.1.1:80,通過防護即可跳轉至目標網站1.1.1.2:8080)
若無法訪問,需在防火牆打開WAF對應端口,上述配置端口為80
firewall-cmd --add-port=80/tcp --permanent #--permanent永久生效
#打開端口后重啟防火牆
firewall-cmd --reload
至此OpenWAF發布完成,默認SQLI,CC防護都是開啟的,可以進行SQL注入或CC攻擊,看防護效果。
