NGINX抵御CC攻击的一些小技巧
最简易
通过 cookie 识别访问者身份结合 302 来抵御 CC 攻击,在 location 段加入以下代码:
if ($cookie_say != "isuike"){
add_header Set-Cookie "say=isuike";
rewrite .* "$scheme://$host$uri" redirect;
}
简易增强
如果 cc 带了 cookie,那么可以加上用户 ip 的识别并写入到 cookie 验证中,结合 302,在 location 段加入以下代码:
if ($cookie_say != "isuike$remote_addr"){
add_header Set-Cookie "say=isuike$remote_addr";
rewrite .* "$scheme://$host$uri" redirect;
}
理论上的完美版
用 salt 加散列,这里需要 nginx_lua 模块,同样,加入以下代码:
rewrite_by_lua '
local say = ngx.md5("isuike" .. ngx.var.remote_addr)
if (ngx.var.cookie_say ~= say) then
ngx.header["Set-Cookie"] = "say=" .. say
return ngx.redirect(ngx.var.scheme .. "://" .. ngx.var.host .. ngx.var.uri)
end
';
这些方法可以解决过 CDN,无法识别 ip 访问频率等因素导致的攻击识别困难的 CC 类攻击防御
相关说明:
1、VIP会员无限制任意下载,免积分。立即前往开通>>
2、下载积分可通过日常 签到、绑定邮箱 以及 积分兑换 等途径获得!
3、本站资源大多存储在云盘,如出现链接失效请评论反馈,如有密码,均为:www.ipipn.com。
4、所有站内资源仅供学习交流使用。未经原版权作者许可,禁止用于任何商业环境,否则后果自负。为尊重作者版权,请购买正版作品。
5、站内资源来源于网络公开发表文件或网友分享,如侵犯您的权益,请联系管理员处理。
6、本站提供的源码、模板、软件工具等其他资源,都不包含技术服务,请大家谅解!
7、源码、模板等资源会随着技术、坏境的升级而存在部分问题,还请慎重选择。
PS.源码均收集自网络,如有侵犯阁下权益,请发信件至: [email protected] .
源站网 » NGINX抵御CC攻击的一些小技巧