通过nginx防护可疑攻击的配置指引

在nginx的配置文件的 serverlocation 元素中添加以下内容,实现通过nginx防护可疑攻击,发现可疑攻击时返回400状态码,同时会记录到访问日志access.log。

配置前请先备份配置文件。

#request_uri不区分大小写匹配不安全的关键字则返回400,关键字按需增删
if ($request_uri ~* '\.jsp$|\.php$|\.coffee$|\.rb$|\.ru$|\.inc$|\.tpl$|\.class$|\.dll$|\.cfg$|\.tmp$|\.cur$|\.zdat$|\.Big5$|\.rt$|\.swf$|\.exe$|\.sh$|\.ini$|\.mov$|\.\.') {
    return 400;
}
 
#以下4个if判断都是校验referer,需要当作一个整体来理解。设置临时变量referer_allowss,当referer_allowss 为400即为可疑
set $referer_allowss '';
 
#referer不区分大小写模糊匹配google、baidu、bxss等,则设置referer_allowss 400
if ($http_referer ~* 'google|baidu|bxss') {
    set $referer_allowss '400';
}
 
#当referer为空时不算可疑,设置referer_allowss 为空
if ($http_referer = '' ) {
    set $referer_allowss '';
}
 
#referer_allowss为400时,当前请求可疑,返回400状态码
if ($referer_allowss = '400' ) {
    return 400;
}

注意:如果以上配置放在serve里面,则需要放在所有所有location前面,实现对所有location相关的请求进行校验。

配置完需要重启nginx使其生效

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值