Files
kefu/im/宝塔WAF安装记录-2026-09-01.md
2026-09-03 08:38:17 +08:00

2.2 KiB
Raw Permalink Blame History

宝塔 WAF 安装记录

日期:2026-09-01

服务器:47.106.181.28

安装内容

  • 插件:宝塔软件商店 Nginx免费防火墙
  • 插件名称:free_waf
  • 版本:8.4
  • Nginx:1.26.3,已包含 Lua Nginx 模块
  • 插件目录:/www/server/panel/plugin/free_waf
  • WAF 运行目录:/www/server/free_waf
  • 日志目录:/www/wwwlogs/free_waf_log

没有安装需要付费授权的 btwaf 插件。

备份

安装前完整备份:

/www/backup/bt-free-waf-20260901-151459

备份包含 Nginx 配置、全部 Nginx 虚拟主机配置、安装前 nginx -T 输出及经过宝塔软件商店 MD5 校验的插件包。

当前策略

  • WAF 总开关:开启
  • SQL 注入和 XSS 检查:开启
  • POST 参数检查:开启
  • Cookie 检查:开启
  • 常见扫描器检查:开启
  • CC 防护:开启
  • CC 阈值:单 IP 每 60 秒 120 次
  • CC 封禁时间:300 秒
  • 境外访问全部拦截:关闭

插件原始默认配置会禁止所有中国大陆以外访问。为避免误伤正常用户,安装后已将该规则关闭。

验证结果

  • Nginx 配置语法检查通过。
  • 正常列表页面连续请求均返回 HTTP 200。
  • 宝塔面板标准浏览器请求返回 HTTP 200。
  • SQL 注入探测请求返回 HTTP 403。
  • sqlmap 扫描器标识请求返回 HTTP 403。
  • WAF 已生成站点拦截日志:/www/wwwlogs/free_waf_log/www.xxiaw.com_2026-09-01.log。
  • 安装后源站缓存命中请求约 3–18 ms;首次缓存生成会更慢。

面板可见性修复

宝塔 13 的软件商店后端在查询“已安装”时默认排除类型为 10 的本地插件,导致 WAF 已运行但界面仍只显示 7 项。已修正 /www/server/panel/class/panelPlugin.py 的本地插件合并和筛选条件,并重启宝塔面板。

  • 修复后“已安装”接口返回 8 项。
  • free_waf 返回 setup=true、status=true。
  • 面板代码备份:/www/backup/bt-waf-ui-20260901-152211/panelPlugin.py。

回滚

宝塔插件自带卸载入口和卸载脚本:

bash /www/server/panel/plugin/free_waf/install.sh uninstall

如需手工恢复,可使用安装前备份目录中的 Nginx 与虚拟主机配置。回滚后必须先运行 /www/server/nginx/sbin/nginx -t,通过后再重新加载 Nginx。