当前位置 主页 > 服务器问题 > win服务器问题汇总 >

    windows下部署免费ssl证书(letsencrypt)的方法

    栏目:win服务器问题汇总 时间:2019-02-27 09:39

    这篇文章给大家介绍了windows下部署免费ssl证书(letsencrypt)的方法,非常不错,具有参考借鉴价值,需要的朋友参考下

    随着网络的发展,网络安全也越来越重要,对于网站来说,从Http升级到https也是我们要做的首要事情。要实现https,首先我们需要申请一张SSL证书,这篇文章我主要介绍下边这几个方面:

    1. SSL简单介绍

    2. 免费Letencrypt证书部署

    3. 安装注意事项

    一.SSL简单介绍

      ssl作为一个网络加密协议,主要是存在于系统中应用层和传输层之间的一个安全套接字层(Secure Socket Layer),也就是位于TCP/IP协议和各个应用层协议之间,为应用数据传输提供加密的协议。当然它内部又分记录协议和握手协议两个部分,这里如果有兴趣的可以去详细了解一下,我先简单介绍一下流程性的东西。

      它的工作流程大概可以理解为这样,客户端发起网络请求给服务端,发起握手,交换证书信息,建立连接。简单来说分为下边几部:

      客户端:发送其支持的ssl版本和加密方式给服务端。

      服务端:选择加密方式并发送证书和公钥给客户端

      客户端:验证证书信息,并通过公钥生成共享秘钥,交换

      服务端:好,咱们可以传递加密数据了

      以上是简单的描述了握手的过程,每一步都可以继续分解,可以自行查找相关文档深入了解。

      这里需要介绍的另外一个协议TLS,这个协议建立在SSL3.0规范之上,更加严格明确。其中它又有一个扩展协议叫做 SNI(Server Name Indication-服务器名称指示),这里介绍下它的主要作用。

      在我们常用的主机中,可能会有很多站点,我们并不能够一次性提前获知将使用此服务器的所有域名列表,但是我们不能每次修改域名重新颁发一次证书,所以有了SNI,让我们可以在一台主机上能够部署多个证书, 使得服务器可以在握手阶段选择正确虚拟域,并发送对应证书。在IIS8.0以上版本中,我们绑定域名时会有如下的选项:

       当前有很多免费和收费 ssl的证书提供商可以供我们选择,当然我们也可以自己作为颁发主体,制作ssl证书,不过像谷歌等浏览器对于不受信任的证书机构在页面上会给提示存在安全风险,阻止访问,这对用户体验来说是非常糟糕的。根据安全等级,当前ssl证书根据主要有以下几类:

      EV - 业界顶级SSL证书,部署了EV SSL证书的网站,地址栏会变成醒目的绿色,并且显示网站所属企业名称

      OV - 使用较为广泛的企业验证型SSL证书,部署了OV SSL证书之后,地址栏会有安全锁标识显示

      DV - 只验证域名,快速签发的SSL证书。也会在地址栏显示安全锁标识,但证书详情里面不显示O字段,不显示使用者名称,只显示域名

      当前受到主流浏览器承认的很多SSL证书机构颁发的免费证书主要也都是DV等级。下面我介绍一下最近比较知名的 Letencrypt 免费ssl证书在windows下的部署过程。

    二. 免费Letencrypt证书部署

      这个是由国外发起的一个免费的ssl项目,现在已经得到了谷歌等主流浏览器的认可。从安全角度考虑,通过Letencrypt安装的免费证书只有三个月的有效期,到期之需要重新申请,但是这也给部署造成了一定的麻烦,所以官方也提供了各种自动化的解决方案,这里我介绍的是windows下的证书申请和自动更新工具 letsencrypt-win-simple。

      首先我们下载   GitHub地址(https://github.com/Lone-Coder/letsencrypt-win-simple/releases) 并解压