首页
首页 教程 派聪明
  • 首页
  • 教程
  • 派聪明
  • 登录
登录技术派畅享更多权益

用户名密码登录

其他登录:
icon_GitHubCreated with sketchtool.
绑定星球,畅享VIP服务

微信扫码/长按识别登录

输入验证码
有效期五分钟 👉 手动刷新

登录即同意 用户协议 和 隐私政策

绑定二哥编程星球,畅享 VIP 尊享服务!

戳我了解如何获取星球编号,新窗口打开

添加二哥微信 itwanger 审核更快

记得备注 星球编号
我会根据星球编号进行审核
1
如何学习技术派?
更新时间: 2023年11月28日
星球
2
技术派的架构设计是什么样的?
更新时间: 2023年03月22日
星球
3
如何整合本地缓存 Caffeine?
更新时间: 2023年03月15日
星球
4
整合 RabbitMQ
更新时间: 2023年05月15日
星球
5
给 RabbitMQ 添加连接池
更新时间: 2023年05月23日
星球
6
如何保证缓存一致性?
更新时间: 2023年05月15日
星球
7
如何实现在线人数统计?
更新时间: 2023年03月25日
星球
8
MySQL同步ES
更新时间: 2023年06月09日
星球
9
redis实现活跃排行榜
更新时间: 2023年08月21日
星球
10
实例演示如何实现性能优化
更新时间: 2023年08月30日
星球
11
十二种性能优化方案实战
更新时间: 2023年11月21日
星球
12
配置 SSL 证书
更新时间: 2023年11月21日
星球
13
ngrok内网穿透访问本地服务
更新时间: 2023年12月01日
星球
14
上传图片至 OSS
更新时间: 2023年12月04日
星球
15
如何渲染 markdown
更新时间: 2023年12月20日
星球
16
如何将技术派写到简历上?
更新时间: 2023年11月10日
星球
17
技术派的 Redis 分布式锁
更新时间: 2024年10月22日
星球
18
Linux 一键源码部署技术派
更新时间: 2024年11月12日
星球
19
如何接入微信支付?
更新时间: 2024年12月11日
星球
20
整合FastExcel导出500万条数据
更新时间: 2024年12月19日
星球
21
接入 deepseek API
更新时间: 2025年02月07日
星球
关注公众号
原创
技术派网站是如何配置 SSL 证书实现 HTTPS 访问的?

大家好,我是二哥呀,今天由我来给大家讲一下技术派网站是如何配置 SSL 证书实现 HTTPS 访问的,这几乎是所有网站上线生产环境时必经的一个配置,否则用户访问网站的时候就会提示网站不安全,这将会大大降低用户对网站的信任程度。

证书过期或者没有配置

如果已经配置过 SSL 证书且正确的情况下,浏览器的地址栏里会有一个加锁的小图标,点击过去就可以看到一个提示:连接是安全的。

前置条件:技术派的生产环境是一台腾讯云的香港服务器,操作系统是腾讯 OS,Web 服务器用的 Nginx,项目是以 jar 包的形式运行的。

什么是 SSL

SSL,也就是 Secure Sockets Layer,中文名叫做安全套接字层,是一种加密安全协议,最初由网景公司于 1995 年开发,旨在保护网络通信中的隐私、身份验证和数据完整性。

算是 TLS 的前身。

TLS,也就是 Transport Layer Security,中文名叫做传输层安全性协议,其实和 SSL 是一回事,因为 TLS 1.0 版就是在 SSL 3.1 的版本上开发的,但在发布前更改了名字,以表明它不再和网景公司有任何关系。

换句话说,有个特工 30 岁以前一直叫王二,30 岁后觉得自己牛气哄哄,成就非凡,不想再叫这么中二的名字了,于是改名叫王三。但认识他的人还是喜欢叫他王二(dog)。

什么是 HTTPS

那知道 SSL 的定义后,也就能明白它的作用了,就是为了对原来的明文 HTTP 请求进行加密,保证通信之间的数据安全。

那什么是 HTTP,想必大家都已经清楚,也就是 HyperText Transfer Protocol,中文名叫做超文本传输协议,是互联网进行数据传输的基础。

在 HTTP 协议下,客户端和服务端之间的通信都是明文的,赤裸裸的。

HTTPS(HyperText Transfer Protocol Secure)算是 HTTP 的安全版本,这个加密的工作就由 SSL 来完成,这次发送的内容就不知道是什么了,只有客户端和服务器端能懂的鸟语。

SSL 证书的工作原理

知道什么是 SSL 后,SSL 证书也就知道了。SSL 就相当于前文提到的那个王二特工,SSL 证书就像王二的签证或者护照。

SSL 证书的作用相当于这些签证或者护照,不仅能提供加密,还能够验证身份来增强通信的安全性。

简单说一下 SSL 证书的工作原理:

第一步,身份验证。

SSL 证书由受信任的证书颁发机构(CA)签发,它包含证书持有者(服务器)的信息,客户端(浏览器)信任这些 CA,并会验证 SSL 的真实性。

第二步,建立加密连接,也就是 SSL 握手🤝

  • 客户端开始握手,发送包含支持的 TLS 版本、密码套件列表以及“客户端随机数”的消息。
  • 服务器回应客户端,发送包含服务器的 SSL 证书、服务器选择的密码套件以及“服务器随机数”的消息。
  • 客户端验证服务器证书的有效性(是否是信任的 CA 签发,是否过期,是否用于请求的域名等)
  • 客户端生成“预主密钥”并使用服务器的公钥(从服务器的 SSL 证书中获取)进行加密,然后发送给服务器。
  • 服务器使用其私钥对接收到的加密的“预主密钥”进行解密。
  • 客户端和服务器都使用“客户端随机数”、“服务器随机数”和“预主密钥”生成会话密钥。这确保了双方都拥有相同的密钥。
  • 客户端发送一条“已完成”消息,该消息使用会话密钥加密。
  • 服务器回应一条同样使用会话密钥加密的“已完成”消息。

第三步,对称加密和非对称加密的结合。

  • 握手阶段使用非对称加密(公钥和私钥)进行安全密钥交换。
  • 之后的通信使用对称加密。

如何申请 SSL 证书

搞清楚 SSL 证书的工作原理后,我们来看一下如何申请 SSL 证书,提供类似服务的平台有很多,二哥这里推荐大家使用 freessl,支持一年免费。

https://freessl.cn/

这个网站做的还是非常友好的,我自己一直在用,像技术派、二哥的 Java 进阶之路,都用的 freessl 申请的。作者我也认识,所以很放心。

第一步,进入该网站,填写域名(可点选自动补全,一般就是 paicoding.com和www.paicoding.com),选择品牌「亚洲诚信双域名一年期」,点击「创建免费的 SSL 证书」。

三年自动化续期的现在是 59.9 元,如果想省钱的话,其实一年到期后自己重新申请就可以了,我主要是为了支持作者,所以技术派的域名就选了五年自动续期,我之前的所有域名都用了 freessl,所以这波不亏。

第二步,选择证书的生成方式,点击「创建」。

我之前选择的是「RSA」「DNS」「离线生成」,这里简单给大家普及一下都是干嘛的。

  • 证书类型为 RSA,ECC 是一种较新的公钥加密技术,基于椭圆曲线数学加密,感兴趣可以去搜一下,RSA 是最早也是最广泛的公钥加密算法,兼容性比较好。
  • 验证方式为 DNS,相比较「文件验证 HTTP」,DNS 只需要在域名控制台进行解析就能完成 CA 的验证操作,不需要配置服务器,更加方便(大约一分钟就可以验证成功)。
  • CSR 为「离线生成」,这种方式需要提前安装好 KeyManager,当然如果没有安装的话,会自动提示你安装,方便我们在本地通过「KeyManager」来管理证书。

如果已经安装了 KeyManager,也可以在 KeyManager 中登录 freessl 的账号,然后直接在这里申请证书。

之前还没有「一键申请」,只有「离线生成」、「浏览器生成」、「我有 CSR」这三种,据说一键申请更加方便,大家可以尝试一下,不需要域名解析,比离线生成更加方便。

「浏览器生成」的话,我之前也试过,忘记了,这里不再推荐;

「我有 CSR」的话,针对之前生成过证书,又重新申请的情况,我没有试过,后面等技术派现在的五年证书过期后可以试一下。

这里再解释一下 CSR,也就是 Certificate Signing Request,中文名叫做「证书签名请求」,里面包含了申请证书的组织信息,以及公钥,这些信息将会包含在最终签发的证书中。

CSR 是申请和安装 SSL/TLS 证书过程中的关键组成部分,保证了证书中的公钥与申请者的私钥相对应,并且提供了必要的身份验证信息。

第三步,颁发证书,技术派已经颁发过了,所以,我直接给出最终的订单详情,并且把注意事项告诉大家

已加入二哥编程星球,即刻绑定星球编号解锁🔐

该文档仅「二哥编程星球」的VIP用户可见

二哥的编程星球内容包括:

1. 付费文档: 技术派、MYDB 等项目配套的 120+篇教程查看权限

2. 面试指南: 校招、社招的 40 万+字面试求职攻略

3. 智能助手: 无限期使用派聪明 AI 助手,已对接讯飞星火和 ChatGPT双通道,不用花 1 分钱

4. 专属问答: 向二哥 1v1 发起提问,内容不限于 offer 选择、学习路线、职业规划等

5. 简历修改: 提供简历修改服务,附赠星球 100+优质简历模板可供参考

6. 学习环境: 打造一个沉浸式的学习环境,有一种高考冲刺、大学考研的氛围


二哥的星球

》步骤①:微信扫描上方二维码,点击「加入知识星球」按钮

》步骤②:访问星球置顶帖球友必看: https://t.zsxq.com/11rEo9Pdu,获取项目配套文档的语雀访问地址和密码

已加入星球,绑定星球编号
删除提醒

确定删除《技术派网站是如何配置 SSL 证书实现 HTTPS 访问的?》吗

2人已点赞

回复