安全迎检之Nginx配置

1、配置并发数

# 修改nginx配置文件,nginx.conf
worker_processes  1;             #工作进程数(CPU核数) 
worker_rlimit_nofile 20000;		 #整个nginx打开文件数的总和

events {
    use epoll;
    worker_connections 20000;    #单个工作进程允许建立的外部连接数
    multi_accept on;
}

http {
  keepalive_timeout 0;		 #禁用keepalive_timeout
}

2、限制IP访问

allow 111.53.220.202;
deny all;

在这里插入图片描述

3、连接数限制

连接数限制,相当于限制了nginx与客户端之间的管道个数
http区块的配置:

# 这个配置的意思就是定义一个名为 asia的limit_req_zone用来存储session,内存为10m大小
limit_conn_zone $binary_remote_address zone=asia:10m;

server区块配置如下;

# 单个客户端ip与服务器的连接数
limit_conn asia 2;

4、请求频率限制

limit_req_zone配置:
请求频率 限制,相当于限制了nginx与客户端管道之间水的流速
http区块配置:

limit_req_zone $binary_remote_addr zone=one:10m rate=10r/s;

server区块配置:

limit_req_zone=one burst=10;

burst漏桶原理
rate=10r/s :从单一IP地址每秒10个请求是允许的
burst=10:允许超过频率rate限制的请求数不多于10个
当每秒请求超过5个 但是在10个以下,也就是每秒请求的数量在5-10之间的请求将被延时delay,虽然没有明确的定义delay,默认就是延时的,因为漏桶其实类似队列Queue或消息系统,
当每秒请求数量超过最低速率每5个请求时,多余的请求将会进入这个队列排队等待。如同机场安检,一次放入5个 。多余5个 。小于10个排队等待
注:这里的队列或者漏桶是以秒为单位的
如果每秒的请求超过10个 ,也就是超出了burst的限制 。那么也不用排队,而是直接回绝返回 503错误(Service Temporarily Unavailable 服务暂时不可用)
nodelay 超过的请求不被延迟处理,设置后15个请求在1秒内处理
在这里插入图片描述

5、防止POST攻击

http {
	#nginx.conf 配置
	#如果请求类型是POST 将ip地址映射到 $limit 值
	map $request_method $limit {
	   default "";
	   POST $binary_remote_addr;
	}
	#创造10mb zone内存存储二进制ip
	limit_req_zone $limit zone=my_zone:10m rate=1r/s;
}

6、带宽限制

location /flv/ {
    flv;
    #当下载的大小超过500k以后,以每秒50K速率限制
    limit_rate_after 500k;
    limit_rate       50k;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值