宝塔6.x版nginx隐藏免费安全过滤功能(waf),要开启安全过滤可使用付费版防火墙插件

  宝塔5.9版本 nginx 的过滤功能,可以对url post get等参数进行安全过滤,可以挡住大量的日常漏洞扫描,比如针对织梦的SQL注入漏洞扫描,非法写入漏洞扫描、屏蔽常见的扫描黑客工具等。这其实就是waf功能,也相当于简化版的宝塔防火墙。这个功能非常好用,曾经是我向很多人推荐使用宝塔的重要原因之一!至少免去了手动集成的工作步骤,对初级用户相当易用,且有用。

  
但是新版本的6.x居然取消了这个重要的安全过滤功能的设置项!

  但在目前6.8版中发现,此功能尚未完全被删除,只是隐藏了开启入口。

宝塔6.x手工开启免费防火墙方法:

  1、进入宝塔面板,打开 软件管理 > Nginx > 设置 > 配置修改;

  2、找到#include luawaf.conf;,去掉前面的 # 符号(“#”代表注释),保存;

  3、修改防火墙配置文件:/www/server/nginx/waf/config.lua

postMatch="off" 中的 off 改为 on
CookieMatch="off" 中的 off 改为 on

  4、下载防火墙规则文件夹 wafconf.zip  (此步可忽略)

  链接:https://www.think3.cc/zb_users/upload/wafconf.zip

  上传到 /www/server/nginx/waf/ 目录中,在宝塔中解压到当前目录

  你会看见多了一个目录:/www/server/nginx/waf/wafconf/,这个目录中是各个规则,可以自行百度其含义。

  5、重启nginx,使waf生效。

  原来的免费过滤功能就开启了。实际上,宝塔的付费版防火墙也是这个原理,从这个优化而来,变得更加细化,更加方便管理。

  6当启动规则后,要修改规则是在 /www/server/panel/vhost/wafconf/ 目录中,其中的 returnhtml 文件就是访问被阻挡的提示内容。  

  拦截日志在:/www/wwwlogs/waf/ 文件夹中,如需关闭日志,将 /www/server/nginx/waf/config.lua 中的 attacklog = "off" 为 attacklog = "off" 就可以了。

  /www/server/nginx/waf/config.lua 配置详解 (此部分转自:https://mkblog.cn/1793/):

RulePath = "/www/server/panel/vhost/wafconf/"   --waf 详细规则存放目录(一般无需修改)
attacklog = "on"                                --是否开启攻击日志记录(on 代表开启,off 代表关闭。下同)
logdir = "/www/wwwlogs/waf/"                    --攻击日志文件存放目录(一般无需修改)
UrlDeny="on"                                    --是否开启恶意 url 拦截
Redirect="on"                                   --拦截后是否重定向
CookieMatch="off"                               --是否开启恶意 Cookie 拦截
postMatch="off"                                 --是否开启 POST 攻击拦截
whiteModule="on"                                --是否开启 url 白名单
black_fileExt={"php","jsp"}                     --文件后缀名上传黑名单,如有多个则用英文逗号分隔。如:{"后缀名1","后缀名2","后缀名3"……}
ipWhitelist={"127.0.0.1"}                       --白名单 IP,如有多个则用英文逗号分隔。如:{"127.0.0.1","127.0.0.2","127.0.0.3"……} 下同
ipBlocklist={"1.0.0.1"}                         --黑名单 IP
CCDeny="off"                                    --是否开启 CC 攻击拦截
CCrate="300/60"                                 --CC 攻击拦截阈值,单位为秒。"300/60" 代表 60 秒内如果同一个 IP 访问了 300 次则拉黑


  为什么在6.8版中取消了这个免费过滤功能的开关?按宝塔官方的说法,这个功能不是太完善,在使用过程中容易误拦截,而收费版的防火墙则优化和细化了功能,更强化了直观管理能力。有条件的可以使用宝塔收费版的防火墙,功能还是比较实用有效的。

  -----------------我是分割线-----------------

  关于宝塔的这个变动,我个人持反对意见,平时经常向人推荐宝塔的最重要的功能就是宝塔的易用和安全,因为用织梦等程序的人还是比较多,但现在这下子这重要的基础安全功能被砍掉了,现在都不好意思向人推荐宝塔了。

  虽然懂一点的用户可以自己集成 ngx_lua_waf 等,但是宝塔既然有了,就可以信赖宝塔,那我还有什么必要去手动集成呢?
也许是迫于盈利压力吧,这个功能已经被建议使用收费插件的防火墙去了。
个人认为,基础安全过滤开放给免费版用,对宝塔的影响力扩大和竞争力提升只有好处,如果是为了提高付费,对防火墙增加高级管理功能,比如已有的数据统计,威胁报告,攻击来源报告,自定义规则功能,访问频率流量防御等,更是真正的付费点。也只有高级用户才需要折腾这些。高级用户付费的意愿也会更高!
你也许想说,这个过滤功能太基础了,达不到真正的安全!这当然是一句正确的话,因为再安全,也没有绝对的安全,安全无止境!

但是初级用户首先需要一个默认的基础安全防御!等他业务更复杂了,自然会有付费安全的需求。而 6.x在免费版就完全取消了这个功能,真是遗憾!

  宝塔官网链接:https://www.bt.cn/

  -------------------

  宝塔最新6.x版本和稳定的宝塔5.9版本安装方法:

  Linux面板5.9(稳定版)安装方法https://www.bt.cn/bbs/thread-1186-1-1.html

  Linux面板6.x 安装方法https://www.bt.cn/bbs/thread-19376-1-1.html

  附录:

  自行安装的nginx可采用以下方法,手工集成nginx waf 防火墙步骤:

  手动安装步骤:https://blog.csdn.net/qq_35999386/article/details/80564605

  Centos上的步骤:https://www.jianshu.com/p/28bc51580ff2

  nginx waf 防火墙 用途介绍

  防止sql注入,本地包含,部分溢出,fuzzing测试,xss,SSRF等web攻击

  防止svn/备份之类文件泄漏

  防止ApacheBench之类压力测试工具的攻击

  屏蔽常见的扫描黑客工具,扫描器

  屏蔽异常的网络请求

  屏蔽图片附件类目录php执行权限

  防止webshell上传

  环境安装:https://blog.csdn.net/m0_37886429/article/details/73732632

  ngx_lua_waf构建:https://github.com/loveshell/ngx_lua_waf

欢迎加入 SEO建站技术交流群 SEO建站技术交流 905633541 群里可以讨论交流建站话题

欢迎转载,请注明来源:https://www.think3.cc/?id=9

评论列表: (共1条评论)

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。