宝塔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/
宝塔¥3188元礼包链接:点此领取¥3188元礼包
-------------------
宝塔最新6.x版本和稳定的宝塔5.9版本安装方法:
Linux面板5.9(稳定版)安装方法:https://www.bt.cn/bbs/thread-1186-1-1.html
Linux面板6.x/7.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建站技术交流群 905633541 群里可以讨论交流建站话题
欢迎转载,请注明来源:https://www.think3.cc/?id=9
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。