前言
前段时间接了个小活,要求是在nginx层面实现简繁体转换。一般正常的简繁转换都会放在前端页面的JS来实现,为何会要求在nginx层面实现呢?问过客户后,发现是要反向代理其它网站。具体的用途我也没好意思深究,我还是只管好好实现功能就完了。
前段时间接了个小活,要求是在nginx层面实现简繁体转换。一般正常的简繁转换都会放在前端页面的JS来实现,为何会要求在nginx层面实现呢?问过客户后,发现是要反向代理其它网站。具体的用途我也没好意思深究,我还是只管好好实现功能就完了。
大家好,这次我们来讲讲如何通过简单的配置文件来实现nginx防御攻击的效果。
其实很多时候,各种防攻击的思路我们都明白,比如限制IP啊,过滤攻击字符串啊,识别攻击指纹啦。可是要如何去实现它呢?用守护脚本吗?用PHP在外面包 一层过滤?还是直接加防火墙吗?这些都是防御手段。不过本文将要介绍的是直接通过nginx的普通模块和配置文件的组合来达到一定的防御效果。
说到获取真实IP
,我们不难想到 nginx
的 http realip module
,就是当遇到IP
是设定范围内的地址时,就逆向递归获取源目标的真实IP
。对于Cloudflare CDN
而言,也是遵从行业标准的,即使用X-Forwarded-For header
和 CF-Connecting-IP header
。
统计IP访问量(独立ip访问数量)
`
awk '{print $1}' access.log | sort -n | uniq | wc -l`
查看某一时间段的IP访问量(4-5点)grep "07/Apr/2017:0[4-5]" access.log | awk '{print $1}' | sort | uniq -c| sort -nr | wc -l