1 http、https、ssl简介
http:超文本传输协议,端口80,明文传输
https:超文本传输安全协议,端口443,在http的基础上添加ssl加密协议,对明文加密。同时,客服端访问服务器时,服务器向客服端发送证书(通过CA机构签发的证书),客服端验证服务器身份后,才能进行正常通信。
ssl:一种网络安全协议,通过使用公开密钥和对称密钥技术以达到信息保密。
2 https配置流程介绍
(1) 申请ssl证书前,需要完成以下条件:
-
通过公共网络可以访问搭建的服务器(公网ip)
-
购买域名,进行持有者身份认证,激活域名
-
开启域名解析服务(将域名与公网ip地址关联起来)
(2)申请ssl证书:
-
购买证书(可选择DV证书的个人测试证书免费版,每年可领一次)
-
创建证书(需要填写已经激活的域名)
-
申请证书(根据域名和DNS解析服务器进行验证,验证成功后才能提交信息到CA机构,等待申请结果)
(3) Tomcat服务器部署ssl证书(也可对其它服务器进行部署)
-
根据服务器下载证书(包括密码)
-
配置tomcat(http转https)
除上述步骤外,如果使用https网址提供服务,需要进行icp备案,否则在一些平台不能进行访问。此外,本文章中本人的试用ecs不符合icp备案要求。
icp备案网址:
网站备案_ICP备案_备案迁移_App备案_小程序备案_备案-阿里云 (aliyun.com)
3 具体介绍
(1) 申请ssl证书前,需要完成以下条件:
1.申请并配置公网ip这里不进行介绍,如果购买/试用阿里云的云服务器,会携带有公网ip,相对来说会更简单,本次介绍就是基于阿里云的ecs服务器。阿里云免费试用 - 阿里云 (aliyun.com)
本人试用的配置如下图:
试用成功后,在控制台找到自己的云服务器实例,即可找到服务器的公网ip。
2.购买域名,进行持有者身份认证,激活域名
域名注册首页网址:域名注册首页
注册域名前需要先查询是否已经被使用(输入自定义的域名),首次注册的用户会有优惠。
购买成功后进入域名控制台查看域名列表(域名控制台 (aliyun.com)),此时的域名不是正常状态,因为没有实名认证,需要创建信息模板填写个人信息,成功认证后才能正常使用。
3.开启域名解析服务
返回域名列表,查看域名状态是否已经正常。如果正常,点击右侧的“解析”,选择DNS解析服务。
配置域名解析时,需要与公网ip关联,解析服务可以选择免费版,不过没有安全防护。
(2)申请ssl证书
进入数字证书管理服务管理控制台 (aliyun.com),购买并申请ssl证书
1.购买证书
有两种免费证书可选,一种是SSL DV证书(可免费申请普通版的一张),一种是个人测试证书(每年一次20个)。下图为DV证书购买,点击绿色框圈着的“个人测试证书”按键,即可进行个人测试证书的购买(我使用的是个人测试证书)。
2.先点击创建证书,再申请证书,将信息提交给证书授权中心(CA)机构,签发证书。
填写验证信息,填写完成后点击下一步
此时可能会显示DNS验证失败,可能是dns信息没有同步,在该页面等待一段时间(1-20分钟再次点击验证),如果还是没有验证成功,就需要检查DNS解析服务是否自动增加并开启了一条验证记录。
dns信息验证成功后,点击”提交审核“按键,应该会进入CA机构审核阶段,等待审核,审核结束,证书状态变为”已签发“。
(3) Tomcat服务器部署ssl证书
可参考阿里云官方文档(也可根据需要选择nginx、apache、JKS等的配置)下载并在Tomcat服务器上安装配置PFX格式的SSL证书_数字证书管理服务(原SSL证书)(SSL Certificate)-阿里云帮助中心 (aliyun.com)