2017年可以说是https快速发展的一年。大量网站已从http协议迁移到https协议。 Https是一种建立在SSL/TLS之上的http协议。与http相比,https主要在http传输过程中提供数据安全机制。
在原始http协议中,传输的内容以明文形式传递。在任何传输的网络节点上,路由器,交换机,运营商核心交换机等都可以轻松地嗅探传输的内容。不仅用户的隐私完全不受保证,而且更严重的是在这些节点上很容易被攻击和劫持,并且返回的结果在返回的http内容中被篡改。例如,在返回的结果中插入广告,在返回的内容中插入恶意代码,等等。
要让自己的网站和 http 服务升级到 https ,你需要为自己的网站申请一张 https 证书。公网可信的 https 证书由 CA 厂商签发。
证书的类型根据认证的级别可以分为以下三种:
1、域名认证(Domain Validation):最低级别认证,可以确认申请人拥有这个域名。对于这种证书,浏览器会在地址栏显示一把锁。
2、公司认证(Company Validation):确认域名所有人是哪一家公司,证书里面会包含公司信息。
3、扩展认证(Extended Validation):最高级别的认证,浏览器地址栏会显示公司名。
根据覆盖的范围又可以分为以下三种:
1、单域名证书:只能用于单一域名
2、通配符证书:可以用于某个域名及其所有一级子域名
3、多域名证书:可以用于多个域名
https 证书也不是免费的。认证级别越高,覆盖范围越广的 https 证书也就越贵。幸运的是,为了推广https证书,大多数国内云服务提供商都提供了免费的https证书颁发服务。当然,最低级别的认证和最小的覆盖范围。本篇的内容,Ueeshop就教大家阿里ssl证书如何申请。
1、阿里云申请 https 证书
首先需要有一个阿里云账号。然后登陆到阿里云的网站,在控制台中找到 CA证书服务。
2、证书选择
进入CA证书服务页面后,单击“购买证书”按钮进入购买页面。选择下面的免费证书。在这里阿里云比较鸡贼,免费证书选项不是那么容易出来。要在界面中选择保护类型“1域名”,请选择品牌“Symantec”,然后“证书类型”中将出现“免费型DV SSL”选项。需要满足这两个条件。
点击“立即购买”并且支付后,会在 CA 证书服务页面生成一个新订单。然后点击“补全”按钮补充信息。
3、指定域名
首先要填写为哪个域名申请的证书。这里必须指定一个具体的二级域名,不支持通配符。
4、填写个人信息
这里填写联系人信息和域名验证类型。
5、域名验证
完成此信息后,请等待系统自动通过审核。单击订单“详细信息按钮”以查看证书验证需要在应用程序证书域名的解析中添加TXT类型的解析记录以验证域名。
请注意,如果您的证书申请的域名在阿里云的帐户下,则在“填写个人信息”步骤中,选中复选框“证书绑定的域名在【阿里云的云解析】产品中,授权系统自动添加一条记录以完成域名授权验证”,系统将自动添加以下域名解析记录。否则,您需要手动添加此域名解析记录。
等待一段时间后,订单状态会显示为签发成功,表示证书已经签发成功了。
6、证书配置
证书签发成功后,需要在 http web 服务器中配置证书。在上图中点击“下载” 按钮后,阿里云提供了下面几种 web服务器的配置样例
其中 nginx 配置的样例如下所示
server {
listen 443;
server_name localhost;
ssl on;
root html;
index index.html index.htm;
ssl_certificate cert/214504606840473.pem;
ssl_certificate_key cert/214504606840473.key;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
location / {
root html;
index index.html index.htm;
}
}
7、访问样例
在Web服务器上配置成功后,访问域名的网页会出现一把锁的标志,表示您的网站受https证书保护。会有个别的浏览器有不一样的显示,以谷歌浏览器为例,点击标志可以看到被正常保护的网页显示“连接是安全的,您发送给这个网站的信息(例如密码或信用卡号)不会外泄”。