限流与SSL证书

本文详细介绍了Nginx的限流策略,包括漏桶算法、令牌桶算法和计数器,并探讨了两者之间的区别。同时,深入讲解了SSL证书的作用,如数据加密、增强用户信任,并对比了不同类型的SSL证书及其成本。此外,还提供了获取SSL证书和配置Nginx SSL模块的步骤。
摘要由CSDN通过智能技术生成

目录

一、限流 

二、nginx限流

1.漏桶算法(限制请求次数)

 2.令牌桶算法(限制请求速度)

3.计数器(限制连接数)

两种算法的区别

三、SSL证书

1.什么是ssl证书?

 2.证书作用

(1)浏览器绿色安全标志

(2)网站数据加密传输

(3)安全标志获得访客信任

(4)强大的加密等级保障

3.SSL证书的类别

(1)按照验证方式

(2)按照一张SSL证书保护的域名数

4.SSL证书的使用成本

(1)免费SSL证书

(2)基础版的 DV SSL证书

(3)企业版 OV SSL证书

(4)扩展验证的 EV SSL证书

5.HTTPS注意事项

四、获取证书和密钥

1.关闭防火墙

2.安装或更新openssl 

3.创建目录

4.创建私钥 

5.生成证书 

五、配置SSL模块

1.添加SSL模块

2.编译安装 

3.关闭服务 

4.检测 

​5.编辑配置文件 

6.创建网页文档 

7.添加地址映射

8.重启并访问

9.rewrite地址重写(http重定向到https) 


一、限流 

        流量限制(rate-limiting)是nginx最有用的功能之一,却经常被错误理解和错误配置。它允许我们限制用户在给定时间内可以发出的HTTP请求数量。例如请求网站首页的GET请求,表单登录的POST请求等。

        速率限制可以出于安全目的使用。例如,可以降低暴力破解账号密码的攻击速度。通过将传入请求速率限制为实际用户的典型值,并(通过记录)标识目标URL,它可以帮助我们防御DDOS攻击。而更为通用的用法是,防止上游应用程序服务器同时被太多用户请求所淹没。

二、nginx限流

Nginx 提供两种限流方式,一是控制速率,二是控制并发连接数。

1.漏桶算法(限制请求次数)

       漏桶算法思路很简单,请求先进入到漏桶里,漏桶以固定的速度出水,也就是处理请求,当水加的过快,则会直接溢出,也就是拒绝请求,可以看出漏桶算法能强行限制数据的传输速率。

       对于很多场景来说,除了要求能够限制数据的平均传输速率外,还要求允许某种程度的突发传输。这时候漏桶算法可能就不合适了,令牌桶算法更为适合。

 

 2.令牌桶算法限制请求速度

        对于很多应用场景来说,除了要求能够限制数据的平均传输速率外,还要求允许某种程度的突发传输。这时候漏桶算法可能就不合适了,令牌桶算法更为适合。

       令牌桶算法的原理是系统以恒定的速率产生令牌,然后把令牌放到令牌桶中,令牌桶有一个容量,当令牌桶满了的时候,再向其中放令牌,那么多余的令牌会被丢弃;当想要处理一个请求的时候,需要从令牌桶中取出一个令牌,如果此时令牌桶中没有令牌,那么则拒绝该请求。

 

3.计数器(限制连接数)

       计数器比较简单粗暴,比如我们限制的是1s能够通过的请求数,实现的思路就是从第一个请求进来开始计时,在接下来的1s内,每个请求进来请求数就+1,超过最大请求数的请求会被拒绝,等到1s结束后计数清零,重新开始计数。

        这种方式有个很大的弊端:比如前10ms已经通过了最大的请求数,那么后面的990ms的请求只能拒绝,这种现象叫做“突刺现象”。

两种算法的区别

       漏桶算法输入的时候请求不固定,但都会在漏桶里边先保存起来(小于漏桶的容量),然后输出的时候采用的是恒定的速率执行请求,有点像队列的先进先出,只是队列中的元素出队的时间间隔一致。

       令牌桶算法跟漏桶算法刚好相反,令牌桶的大小就是接口所能承载的最大访问量,令牌的发放是恒速的,而最终能在某一时间处理的请求数不是恒定的,这取决于单位时间内令牌桶中的令牌数量。

       从作用上来说,漏桶和令牌桶算法最明显的区别就是是否允许突发流量(burst)的处理,漏桶算法能够强行限制数据的实时传输(处理)速率,对突发流量不做额外处理;而令牌桶算法能够在限制数据的平均传输速率的同时允许某种程度的突发传输。

Nginx官方版本限制IP的连接和并发分别有两个模块:

1.limit_req_zone 用来限制单位时间内的请求数,即速率限制,采用的漏桶算法 "leaky bucket"。

2.limit_req_conn 用来限制同一时间连接数,即并发限制。

三、SSL证书

1.什么是ssl证书?

       SSL证书是数字证书的一种,由权威数字证书机构(CA)验证网站身份后颁发,可实现浏览器和网站服务器数据传输加密。网站安装SSL证书后会在浏览器显示安全锁标志,数据传输协议从http(传统协议) 升级为 https(加密协议)。

<
  • 35
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 30
    评论
评论 30
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值