简单叙述一下https的定义和实现https的一些基本作用,然后会给到申请SSL证书的方式以及安装部署流程,最终实现网站的https访问。
随着互联网的快速发展,网络安全问题日益凸显。在互联网上传输敏感信息、进行在线交易和共享个人数据时,确保数据的安全性和隐私保护成为了至关重要的任务。为了解决这些问题,HTTPS(超文本传输安全协议)应运而生,成为了保护网络通信的重要一环。
HTTPS是HTTP协议的安全版本,通过使用SSL(安全套接层)或TLS(传输层安全)协议加密通信,为数据传输提供了保密性、完整性和身份认证。与传统的HTTP相比,HTTPS能够防止敏感信息被窃取、篡改和劫持,为用户和网站提供了更安全可靠的通信方式。
实现https后有哪些好处:
- 服务器端和浏览器端的信息交互得到保障,确保了数据传输安全。
- 确认了服务器及网站的真实性,在申请证书的过程中会需要验证域名所有权甚至更高级别的证书还需要提供单位组织信息以及相关业务的合理合法性。
- 增加网络搜索权重,chrome搜索时会优先显示实现了https的同类型网站。
- 性能成本方面也完全不同,http访问是不需要产生费用的,这是最基本的信息传输协议,而实现https时则需要对应的SSL/TLS证书,虽然有免费证书,但是一般都是最基础的DV单域名证书,而更高级别的证书则会需要相应的费用产生。
- 符合法规要求:很多行业和地区的法规要求网站必须采取适当的加密措施来保护用户数据,HTTPS证书是满足这一要求的关键组成部分。
最关键的部分来了:申请部署安装SSL证书的教程来了:
如何申请-部署安装SSL证书教程(仔细看):
目前可实现https的证书类型也很多,根据网站的域名种类或是IP分为,单域名证书、多域名证书、通配符证书、IP证书,在部署至服务器后皆可实现网站的https访问。
下面用通配符证书举例,给大家做一期详细的从证书申请到安装部署的教程(单域名证书、多域名证书、IP证书的部署流程相差不大),目前证书在进行域名所有权认证的过程常见的方式为DNS解析、以及服务器文件验证。
注:其中通配符证书(泛域名证书、子域名证书)有且只能使用DNS解析的方式验证域名所有权、IP证书有且只能使用服务器文件验证的形式验证IP所有权,其他证书则是二者皆可。
以JoySSL为例,目前提供的免费证书包括单域名证书、多域名证书、泛域名(通配符)证书,也有专门提供给高校和政务部门的免费一年期证书。这里不得不说,虽然国内免费证书也有几家但是论操作的简单和免费证书的全面性,还是JoySSL操作的比较顺手(不是我刻意说人家好),是人家操作界面确实简单易装。下面给大家现场实操教学:
- 打开JoySSL官网,选择永久免费版:永久免费SSL证书_永久免费https证书_永久免费ssl证书申请-JoySSL
- 按照自己的需求去选择适合自己网站的证书:单域名证书(有且只有一个域名需要保护)、多域名证书(有两个以上的不同域名需要保护)、泛域名证书(有一个主域名和无限多的子域名需要保护):具体可以点开详情查看该证书的具体适用情况,然后如图点击下单:
- 选择好之后点击加入购物车之后结账即可:
- 填写需要部署证书的域名或者是主域名(通配符证书需要填写主域名),选择加密强度:2048位加密强度或4096位加密强度(2048兼容性更强、4096安全性更强),最后选择验证方式:DNS解析或者是服务器文件验证两种方式
这里用DNS解析的验证方式举例(主要是因为简单):
- 填写该域名使用单位的基本信息或个人门户网站的基本信息:
- 根据域名和证书类型自动生成CSR文件-密钥文件,自行保存,点击下一步:
- 根据CNAME复制生成的记录值解析,复制好对应的记录值和主机记录值。
- 我的域名是在腾讯云注册的,这里以腾讯云的解析为例(其他解析平台也可以,操作方式也差不多)、记录类型更改为CNAME,复制上一步生成的记录值和主机记录值到相应为止,点击确认返回上一步的JoySSL解析界面,选择点击验证,验证完成后则会于10分钟内签发证书,等待签发即可
- 证书验证完成且无误后(这里主要是验证域名所有权),就可以看到该证书的实例状态变为已签发,就可以进行配置了
- 点击下载对应的证书,将开始下载对应的文件,这里就不得不说一下JoySSL做的比较好的地方,压缩包解压后可以得到对应的帮助文档和证书文档,这一点做的确实直白清晰,下图就是。
- 点开证书文档,会有多种web服务器环境下对应的认证文件及说明,其中包含有如图所示的:Nginx、Apache、IIS、Tomcat、Other,选择自己的服务器环境进行文件认证配置。
像是Apache,目录中提供了ca-bundle、crt、key文件;Nginx目录中提供了key、crt文件;而Tomcat提供了jks、key、密码文件等。这样就极大方便了我们接下来的配置操作,而且有多种格式,找起来也比较直观清晰。
- 使用Nginx配置文件(只是我习惯使用Nginx,如图也有Apache IIS Tomcat配置方式)
- 将对应文件上传至服务器中
- 修改Nginx配置:而后修改nginx的配置文件(我这里的配置文件路径是/usr/local/nginx/conf/nginx.conf,大家需要根据自己实际情况找到对应的配置文件),配置上SSL证书。这里需要注意,nginx版本为1.15.0之前的语法是listen 443和ssl on,nginx版本为1.15.0之后的使用listen 443 ssl。
编写完成后检测配置无误的话就可以直接加载配置了
刷新页面使用https跳转即可实现网站https了