Linux宝塔面板免费版开启waf防火墙的方法教程

原创 Laughing  2019-01-19 15:37  阅读 149 次 评论 0 条

塔面板在 6.x 之前的版本中自带了 Nginx 防火墙功能(Nginx管理 > 过滤器 如下图),到了 6.x 之后,,,为了推行收费版的防火墙插件,宝塔官方把这个免费的防火墙入口给隐藏了。今天,就来说说如何开启这个隐藏的 Nginx 防火墙!

警告:以下内容在改动前一定要备份原文件!否则……
1、进入宝塔面板,打开 软件管理 > Nginx > 设置 > 配置修改;

2、找到大约在第 13 行的 #include luawaf.conf;,去掉前面的 # 符号(“#”代表注释),保存并重启 Nginx。

3、恭喜你,已经成功开启了防火墙!可以试着访问 http://你的网址/?id=../etc/passwd,页面会弹出拦截提示,如下图:

么问题来了:该怎么自定义这个防火墙的防护规则呢?别急,请跟我一起来!

还是在宝塔面板里头,打开面板的文件管理,进入 /www/server/nginx/waf 目录,里面的 config.lua文件就是防火墙的配置文件。每一项的具体含义如下所示:

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

评论
当前位置:歪迪资源屋 > 运营优化 >
Linux宝塔面板免费版开启waf防火墙的方法教程
2018-12-21 来源:mengkun 运营优化 108 0
歪迪资源屋有话要说:大锅 本站免费分享的资源均来自网络,如有侵权及其他事宜请点击联系我们处理
宝塔面板在 6.x 之前的版本中自带了 Nginx 防火墙功能(Nginx管理 > 过滤器 如下图),到了 6.x 之后,,,为了推行收费版的防火墙插件,宝塔官方把这个免费的防火墙入口给隐藏了。今天,就来说说如何开启这个隐藏的 Nginx 防火墙!

Linux宝塔面板免费版开启waf防火墙的方法教程

警告:以下内容在改动前一定要备份原文件!否则……
1、进入宝塔面板,打开 软件管理 > Nginx > 设置 > 配置修改;

2、找到大约在第 13 行的 #include luawaf.conf;,去掉前面的 # 符号(“#”代表注释),保存并重启 Nginx。

3、恭喜你,已经成功开启了防火墙!可以试着访问 http://你的网址/?id=../etc/passwd,页面会弹出拦截提示,如下图:

Linux宝塔面板免费版开启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 次则拉黑
配置文件中,RulePath 项对应的文件夹里存放的是具体的拦截规则。打开这个文件夹,可以看到里面有一些无后缀名的规则文件。其中每一个文件的作用如下:

  1. args        --GET 参数拦截规则  
  2. blockip     --无作用  
  3. cookie      --Cookie 拦截规则  
  4. denycc      --无作用  
  5. post        --POST 参数拦截规则  
  6. returnhtml  --被拦截后的提示页面(HTML)  
  7. url         --url 拦截规则  
  8. user-agent  --UA 拦截规则  
  9. whiteip     --无作用  
  10. whiteurl    --白名单网址  

这些文件里,除了 returnhtml(拦截提示页面)以外,其它的内容都最好不要改动,除非你正则学的比较好……否则很容易改出问题来。

如果改动了其中的内容,记得要重启 Nginx 才会生效哦~

历史上的今天:

本文地址:https://www.lisen.me/linux-pagoda-panel-free-edition-ways-to-open-waf-firewall.html
版权声明:本文为原创文章,版权归 木子网 所有,欢迎分享本文,转载请保留出处!

发表评论


表情