现在很多站长都开始用VPS、云服务器建立自己的网站,但是经常会受到恶意工具的扫描、注入、溢出挂马、CC攻击等等。其实宝塔面板有编译了ngx_lua_waf模块,只是为了推销自己的宝塔付费防火墙,免费的Nginx_lua_waf就隐藏起来了。兔兔教大家在宝塔面板中开启隐藏的nginx防火墙。

如何开启ngx_lua_waf防火墙。
登录BT宝塔面板后台,然后进入软件商店,找到安装好的Nginx->设置Nginx->配置修改,如下图:
1.jpg
找到

#include luawaf.conf;

将#号去掉

include luawaf.conf;

保存,即可开启nginx防火墙。
然后我们可以测试一下,在浏览器中访问

http://www.你的网址.com/?id=../etc/passwd

如果看到类似下面的防火墙拦截提示页,说明防火墙已经在起作用呢。
2.jpg

Ngx_lua_waf防火墙配置
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"}                     -文件后缀名上传黑名单,如有多个则用英文逗号分隔。
ipWhitelist={"127.0.0.1"}                       -白名单IP,多个用英文逗号分隔:                {"127.0.0.1","127.0.0.2"}
ipBlocklist={"1.0.0.1"}                         -黑名单IP,多个用英文逗号分隔。
CCDeny="off"                                    -是否开启防CC攻击拦截
CCrate="300/60"                                -CC攻击拦截值:"300/60"意思60秒内同一个IP访问超过300次则拉黑

默认cc攻击拦截功能是关闭的,建议打开,我们可以设置为120/60,同个IP在60秒内访问超过120次很不正常了。大家可以自行调整。
最后一个就是:/www/server/panel/vhost/wafconf/目录下的returnhtml文件,就是拦截后显示的页面。大家可自己DIY一下,也可以直接用默认的。
Lua_waf防火墙的防护日志在哪查看?
Nginx_lua_waf防火墙开启后,我们可以在/www/wwwlogs/waf目录下查看VPS服务器的防火墙记录日志。每个域名都有单独列一个文件,记录恶意访问者的IP等等。

最后修改:2024 年 03 月 09 日
如果觉得我的文章对你有用,请随意赞赏