BT宝塔面板开启隐藏的luawaf防火墙的方法

2019年9月25日21:51:12 评论 805

越来越多的人使用VPS及云服务器建立网站,但是与虚拟主机或者管理型的服务器相比,个人VPS主机基本上是无管理型的,即主机商只负责VPS主机的网络畅通,至于技术上的问题都得靠自己来解决。网站经常会受到一些自动化工具的扫描、注入、溢出挂马等等的情况。

可能很多人都会使用BT宝塔面板来控制自己的VPS及云服务器,以前5.9版本宝塔面板是安装了ngx_lua_waf模块的,在5.9版本中面板集成了这个简易waf,所以我们可以在5.9版本的nginx中看到过滤器这个功能,并且可以设置。可惜在6.X版本中,宝塔面板阉割了很多功能,包括好用的过滤器,等等。但是宝塔面板还是编译了ngx_lua_waf模块,我们今天看看如何在宝塔面板中开启隐藏的nginx防火墙。

首先我们打开Nginx的配置文件就能看到以下代码:

http
    {
        include       mime.types;
	#include luawaf.conf;

上面也说了BT宝塔面板其实还是有编译ngx_lua_waf模块,只是注释掉了而已,所以我们只需要把前面的[code]#[/code]删除保存重启Nginx即可。

这样我们就把ngx_lua_waf防火墙模块开启了,现在我们来试试效果试着访问http://你的网址/?id=../etc/passwd,页面会弹出拦截提示,如下图:

ngx_lua_waf防火墙模块规则在/www/server/nginx/waf目录,里面的config.lua文件就是防火墙的配置文件。

每一项的具体含义如下所示:

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 次则拉黑

这里说下cc攻击拦截默认是没有打开的,建议打开,阀值我们可以设置为60/60,如果同一个IP在60秒内访问60次你们觉得正常不?

配置文件中,RulePath项对应的文件夹里存放的是具体的拦截规则。打开这个文件夹,可以看到里面有一些无后缀名的规则文件。

其中每一个文件的作用如下:

args        --GET 参数拦截规则
blockip     --无作用
cookie      --Cookie 拦截规则
denycc      --无作用
post        --POST 参数拦截规则
returnhtml  --被拦截后的提示页面(HTML)
url         --url 拦截规则
user-agent  --UA 拦截规则
whiteip     --无作用
whiteurl    --白名单网址

returnhtml是拦截提示页面,你可以改成你自己喜欢的样子,其它的文件内容都最好不要改动,否则很容易改出问题来。如图:

好了以上就是BT宝塔面板开启隐藏的luawaf防火墙的方法,有空会写一些规则分享出来给大家。

  • “爱游博客”微信公众号
  • 关注微信公众号,分享前沿资讯!
  • weinxin
  • “爱游博客”微信小程序
  • 微信扫一扫,资讯唾手可得!
  • weinxin
阿里云首次购买高性能云服务器,享低至2折优惠

发表评论

您必须才能发表评论!