linux nginx安装HttpGuard防止CC攻击

之前说了安装verynginx来进行cc防御和防火墙,虽然功能强大,还有控制面板,但是个人就只是防御下cc,还是找个简单的好了。

轻新优选情趣用品

HttpGuard有免费版本和商业版,商业版也是有控制面板的,现在好像是500一年吧,原价2000。如果不懂程序或者要更多功能的,可以去买授权。

免费版本还是在,只是防御CC攻击,还是可以的。

如果要商业版可以去官方网站:HttpGuard

HttpGuard也是基于lua的,所以还是要安装lua,如果没有安装的可以安装这里的来:linux nginx服务器安装verynginx防止CC攻击

一、下载HttpGuard免费版本

创建文件夹

mkdir HttpGuard

cd HttpGuard

下载解压

wget https://www.zhujitop.com/test/x/master.zip

unzip master.zip

转移文件夹

cp -r HttpGuard-master/ /usr/local/nginx/HttpGuard

是为了把HttpGuard放到nginx文件夹里面去

配置文件

在nginx.conf文件http区域内增加

lua_package_path "/usr/local/nginx/HttpGuard/?.lua";
lua_shared_dict guard_dict 100m;
lua_shared_dict dict_captcha 70m;
init_by_lua_file '/usr/local/nginx/HttpGuard/init.lua';
access_by_lua_file '/usr/local/nginx/HttpGuard/runtime.lua';
lua_max_running_timers 1;
linux nginx安装HttpGuard防止CC攻击
(图1)
修改HttpGuard配置文件
打开 /usr/local/nginx/HttpGuard/config.lua
把basedir后面的路径修改了
这里也可以顺便修改下验证配置:
limitReqModules这句,图2中,代表10秒内超过10次刷新,访问,就出现验证码。
linux nginx安装HttpGuard防止CC攻击
(图2)
安装验证码(好像可以不安装)
cd /usr/local/nginx/HttpGuard/captcha/
/usr/local/php/bin/php getImg.php
这个是用linux命令操作的,然后重启下nginx
测试,动态页面才有效,不是动态的,测试的时候,静态页面无所谓CC攻击。
linux nginx安装HttpGuard防止CC攻击
HttpGuard的配置文件config.lua,还有很多参数,可以自己看着改。
nginx自带的模版或者基于其他模块,来进行CC防御,特别是对浏览器验证、ip判断,有很大误伤的可能性,但是简单防御还是可以的。
一个网站的正常用户浏览,不可能10秒就在同一个页面访问10次吧,除非有什么特殊活动。

HttpGuard不能和verynginx同时并存,测试了下,nginx就无法启动,期待他们都更好。

 

本站所有内容均为自己码的字,部分代码来源搜索,转载请个原文链接,谢谢~ | 联系我 | 服务器推荐 |

你可能喜欢