近期有不法人员针对公司的登录地址进行非法暴力破解,所以本人加上了登录页面的单个 ip 的频率限制写法如下!
http 模块中加入:
http { #定义一个名为allips的limit_req_zone用来存储session,大小是10M内存, #1M能存储16000个状态,rete的值必须为整数, #限制两秒钟一个请求,设置成30r/m ...... limit_req_zone $binary_remote_addr zone=g6k:10m rate=30r/m; ...... }
在 server 模块中匹配需要限制的 url:
#限制URL /login 的访问频率 location /login { limit_req zone=g6k burst=5 nodelay; }
添加好后记得使用一下命令检查配置文件和重载配置
nginx -t nginx -s reload
基本就实现了对单个 url 的访问频率控制!