LNMP服务器 Nginx 限制单个IP的并发连接数及对每个连接速度(限速)

使用Nginx限制单个IP的并发连接数能够减少一些采集程序或者DDOS的攻击。
再lnmp的nginx配置中已经添加了部分代码,但是是注释掉的,可以编辑/usr/local/nginx/conf/nginx.conf 文件

1.1.8以上版本的nginx的设置:
查找:

#limit_conn_zone $binary_remote_addr zone=perip:10m;

将前面的#去掉,没这一行的,话加上

limit_conn_zone $binary_remote_addr zone=perip:10m;

再在要设置限制连接数的虚拟主机配置里的server段里添加上

limit_conn perip 10;

10就是单个IP的最大并发连接数。

limit_rate 100k;

limit_rate为限速为 100KB/秒。

限制每个连接速度为100K,此限制是针对单个线程,比如,我用IE下载是100K,当用迅雷时它会占用2个线程,所以迅雷下载速度为200K,如果单个IP的并发数设置为10,则多线程下载的话速度可以达到100K×10。

另外还有[size=1em]limit_rate_after的参数,可以设置一个初始量,超量后将按limit_rate值限速。
如设置为

limit_rate_after 500k;
limit_rate 100k;

每个连接预先不限制速度下载500KB,然后再限速100KB下载

最后/usr/local/nginx/sbin/nginx -t 测试配置是否有错误,如没有错误执行:
/usr/local/nginx/sbin/nginx -s reload 重载配置使其生效

本站内容搜集转载自网络,仅供网友测试学习使用,请勿用做正式建站,有能力请支持正版,

本站内容如有侵犯权益,请来信通知 185166915@qq.com,本站将在12小时内删除!