共计 932 个字符,预计需要花费 3 分钟才能阅读完成。
名词说明
- Nginx 配置目录:
/path/to/nginx/conf
- 宝塔:
/www/server/nginx/conf
- 宝塔:
- Nginx 主配置文件:
/path/to/nginx/conf/nginx.conf
- 宝塔:
/www/server/nginx/conf/nginx.conf
- 宝塔:
- Nginx 虚拟域名配置文件:
/path/to/nginx/conf/vhost/Waf.conf
- 宝塔:
/www/server/panel/vhost/nginx/Waf.conf
- 宝塔:
waf_ipcfg.conf
解析前端机器透传的用户真实 IP 信息waf_blacklist.conf
封禁 IP 配置
步骤
- 新建文件:
waf_ipcfg.conf
# 应用于反向代理模式 - 确保后端机器获取真实用户 IP
map $http_x_forwarded_for $clientRealIp {
"" $remote_addr;
~^(?P[0-9\.]+),?.*$ $firstAddr;
}
- 新建文件:
waf_blacklist.conf
# IP 黑名单配置
# 样例:封禁 8.8.8.0/24 和 8.8.8.8 和 8.8.4.4
if ($clientRealIp ~* "8.8.8.0/24|8.8.8.8|8.8.4.4") {
return 403;
break;
}
- 将
waf_ipcfg.conf
、waf_blacklist.conf
文件放入 Nginx 配置目录; - 在 Nginx 主配置文件中
http
段 引入waf_ipcfg.conf
;
include /path/to/conf/waf_ipcfg.conf; # 样例
include /www/server/nginx/conf/waf_ipcfg.conf# 宝塔
- 在 Nginx 虚拟域名配置文件中的
server
段 引入waf_blacklist.conf
配置;
include /path/to/conf/waf_blacklist.conf; # 样例
include /www/server/nginx/conf/waf_blacklist.conf; # 宝塔
- 配置完成后,记得检验配置文件是否正确,正确无误之后方可重启 Nginx。
nginx -t # 检验 Nginx 配置文件是否正确
service nginx reload # 重启 Nginx
正文完