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了
我们需要设置 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条代码放到正确的位置,如下图。注意,前两条防止的位置
配置VeryNginx
2、第三条命令:
宝塔面板→ 网站→当前网站→设置 → 配置文件,将以下代码放到 root /www/wwwroot/ 下面即可。具体如图:
3、重启nginx,或者重新加载下配置都行。宝塔面板→nginx→服务→重载/重启Nginx:
VeryNginx 启动后,可以通过浏览器访问管理面板来查看状态以及进行配置。
管理面板地址为 http://{{your_machine_address}}/verynginx/index.html。
默认用户名和密码是 verynginx / verynginx。
登录之后就可以查看状态,并对配置进行修改了。修改配置后,点击保存才会生效.
设置cc防御(举例):在自定义动作→拦截频率中可以设置。如图:
然后,我们重新打开下我们的网站,进行测试cc攻击了,是不是被拦截返回了。
VeryNginx是一个高级nginx扩展程序,他的强大之处在于VeryNginx 包含强大的自定义功能,可以做很多事情,比如waf防火墙功能。
他的 自定义行为包含两部分, Matcher 和 Action 。 Matcher 用来对请求进行匹配, Action 为要执行的动作 这样的优势在于把所有的前置判断整合在Matcher里一起来实现了,使复杂(组合)规则的实现变成了可能。更多具体,需要去摸索。
有问题,可以留言,觉得不错记得转发哦,当然也可以给我来个关注什么的,求个关注,哈哈。