自从HTTPS的普及,越来越多的网站开启了HTTPS。要开启HTTPS,需要申请一张SSL证书,而SSL证书的价格有高有低,对于大型企业和公司来说,购买一张SSL证书不在话下,但对于个人和小型企业来说,几百到几千的价格可能还是会让人不能接受。但是为了推动HTTPS的发展,部分SSL证书颁发机构都推出了免费的SSL证书服务,比如赛门铁克和Let's Encrypt等等。

什么是SSL

SSL(Secure Sockets Layer)安全套接是一种安全协议,目的是为互联网通信提供安全及数据完整性保障。网景公司(Netscape)在1994年推出首版网页浏览器-网景导航者时,推出HTTPS协议,以SSL进行加密,这是SSL的起源。IETF将SSL进行标准化,1999年公布第一版TLS标准文件。随后又公布RFC 5246 (2008年8月)与 RFC 6176 (2011年3月)。在浏览器、电子邮件、即时通信、VoIP、网络传真等应用程序中,广泛支持这个协议。主要的网站,如Google、Facebook等也以这个协议来创建安全连接,发送数据。当前已成为互联网上保密通信的工业标准。

网站开启HTTPS能起到什么作用?

当网站开启HTTPS后,可以有效地降低网站数据被第三方机构(运营商)篡改,保证传输数据的完整性,同时增加网站的可信度。同时也会增加网站的收录量(有待考证),浏览器也将逐渐的抛弃非HTTP站点。也可以确保各类型网页数据的真实性,保护用户浏览网页内容的私密性。

如何申请

要申请免费的SSL证书,可以通过阿里云、腾讯云等服务商来申请免费的DV SSL证书,还有一个 免费申请SSL证书的网站也可以更方便申请SSL证书。

通过阿里云申请免费SSL证书

登录阿里云官网,找到"云安全=>SSL证书=>立即购买",选择最右侧的"免费型DV SSL证书",点击"立即购买",支付完成后会打开SSL证书控制台,找到未签发的证书,点击"申请",填写证书相关信息

填写SSL证书申请信息

验证方式共分为三种,分别是:

  1. 自动DNS验证(如果域名是在阿里云万网购买,则可以由系统自动向域名添加一条DNS解析记录)
  2. 手工DNS验证(如果域名不是在阿里云万网购买,则需要到域名服务商手动添加一条DNS解析记录)
  3. 文件验证(需要下载阿里云提供的文件,上传到网站的指定目录,验证成功后即可申请)

填写完相关信息后点击"下一步"进行域名验证,此时需要等待5~30分钟左右的时间来验证域名所有权,验证成功后可根据服务器类型来下载对应的证书类型。

下载已经申请好的证书

通过freeSSL申请免费SSL证书

FreeSSL.cn 是一个免费提供 HTTPS 证书申请、HTTPS 证书管理和 HTTPS 证书到期提醒服务的网站,旨在推进 HTTPS 证书的普及与应用,简化证书申请的流程。

申请SSL证书前,最好先注册一个账户,以方便查看已经申请好的SSL证书列表。打开freeSSL首页后,在首页的输入框中填写要申请的域名,输入完成后选择相应的证书品牌,其中"亚洲诚信"品牌的证书有效期为一年,"Let's Encrypt"品牌的证书有效期为三个月。

freessl首页

如果只有一个域名,推荐选择"亚洲诚信"品牌的证书;如果你有好几个子域名或者好几个不同的域名,建议选择后两者。

注:"Let's Encrypt V2"(中间)为通配符证书,即"*.example.com",可以绑定无限个子域名;"Let's Encrypt"(最后一个)为多域名证书,可以申请多个域名。

选择好证书品牌后,点击"创建免费的SSL证书"来进行下一步操作。紧接着会出现"证书类型"、"验证类型"等选项。

选择CSR类型

"CSR生成"推荐使用前两项。如果"CSR"选项选择的是"离线生成"或者"一键生成",需要下载"KeyManager"的软件,该软件是创建CSR和申请SSL证书的自动化软件;如果选择的是"浏览器生成"和"我有CSR"则不用下载该软件。但是为了日后更方便的管理和导出SSL证书,还是推荐使用"KeyManager"软件来来申请SSL证书。

"一键申请"需要填写域名服务商的access key等信息。

选择"离线生成",选择好后点击"点击创建"按钮,将打开"KeyManager"软件,并且自动创建一个CSR信息,紧接着返回浏览器,在弹出的对话框中点击"继续",接下来就需要选择验证类型,分别有文件验证和DNS验证,大部分情况下都是DNS验证。根据提示的信息到你的域名服务商添加相应的解析记录后,点击网页中央的"点击验证"按钮,等待20秒左右会显示SSL证书的信息,而私钥内容则为空,可以到"KeyManager"软件里找到。点击"保存到KeyManager"即可。

在KeyManager中导出证书

保存到KeyManager软件后,点击"证书管理",找到刚才申请的SSL证书,点击最右侧的"...",导出证书,选择相应的服务器类型导出即可。

在KeyManager中导出SSL证书

如果验证DNS解析记录不匹配时,不要短时间内多次点击验证,请等待10分钟左右再验证;