13046685510

免费网站高级Waf防火墙:VeryNginx,防御网站被攻击

  VeryNginx 是一个基于openrestry(其实是基于nginx的lua扩展)的开发程序,实现了高级的防火墙,可以做访问统计和其他的一些防护功能。 VeryNginx 扩展了 Nginx 本身的功能,并提供了友好的 Web 交互界面


  VeryNginx安装需要支持lua模块支持,具体包括:lua-nginx-module,http_stub_status_module,http_ssl_module这3个模块。如果想在nginx中使用VeryNginx ,就需要安装以上模块,不过宝塔面板已经默认编译了这3个模块,宝塔面板一般都安装 lua模块,也支持安装openrestry。所以我们只需要安装VeryNginx单个软件即可。


测试环境:


  宝塔面板7.0.3(其他版本大同小异)、nginx1.17.5、统:CentOS Linux 7.7.1908 (Core)


  VeryNginx相关页面:

  github:https://github.com/alexazhou/VeryNginx


  中文使用文档:

  https://github.com/alexazhou/VeryNginx/blob/master/readme_zh.md


安装方法:


  git克隆下载,并且进行安装:


git clone https://github.com/alexazhou/VeryNginx.gitcd VeryNginx python install.py install verynginx


  出现下面 successfuly,就代表OK了


免费网站高级Waf防火墙:VeryNginx,防御网站被攻击(图1)


配置VeryNginx


  我们需要设置 Nginx 配置文件,添加三条 Include 指令来实现功能,分别为:


include /opt/verynginx/verynginx/nginx_conf/in_external.conf;   #http 配置块外部
include /opt/verynginx/verynginx/nginx_conf/in_http_block.conf;  #http 配置块内部
include /opt/verynginx/verynginx/nginx_conf/in_server_block.conf;   #server 配置块内部


  1、前两条命令:


  设置Nginx配置文件 宝塔面板→ Nginx →设置 → 配置修改,将以下2条代码放到正确的位置,如下图。注意,前两条放置的位置。


免费网站高级Waf防火墙:VeryNginx,防御网站被攻击(图2)

配置VeryNginx


  2、第三条命令:


  宝塔面板→ 网站→当前网站→设置 → 配置文件,将以下代码放到 root /www/wwwroot/ 下面即可。具体如图:


免费网站高级Waf防火墙:VeryNginx,防御网站被攻击(图3)


  3、重启nginx,或者重新加载下配置都行。宝塔面板→nginx→服务→重载/重启Nginx:


VeryNginx 进行配置


  VeryNginx 启动后,可以通过浏览器访问管理面板来查看状态以及进行配置。


  管理面板地址为 http://{{your_machine_address}}/verynginx/index.html。


  默认用户名和密码是 verynginx / verynginx。


  登录之后就可以查看状态,并对配置进行修改了。修改配置后,点击保存才会生效.


  设置cc防御(举例):在自定义动作→拦截频率中可以设置。如图:


免费网站高级Waf防火墙:VeryNginx,防御网站被攻击(图4)


  然后,我们重新打开下我们的网站,进行测试cc攻击了,是不是被拦截返回了。


VeryNginx总结


  VeryNginx是一个高级nginx扩展程序,他的强大之处在于VeryNginx 包含强大的自定义功能,可以做很多事情,比如waf防火墙功能。


  他的自定义行为包含两部分, Matcher 和 Action 。 Matcher 用来对请求进行匹配, Action 为要执行的动作 这样的优势在于把所有的前置判断整合在Matcher里一起来实现了,使复杂(组合)规则的实现变成了可能。更多具体,需要去摸索。

7x24小时服务专线 130-4668-5510
官方微信 关闭