阿里云 CDN HTTPS 最佳实践——客户端证书认证

简介: 阿里云CDN HTTPS最佳实践系列文章,由CDN高防技术专家金九撰写

背景

我们在使用 HTTPS 时经常接触到的是服务器证书认证(单向认证),很少用到客户端证书认证(双向认证),这是因为对于 web 网站来说,用户数目广泛,使用服务器证书认证就够了,无需在 SSL 层做用户身份验证,对于需要验证的页面再在应用逻辑层来做用户身份验证(比如常见的账号密码登录),使用客户端证书认证反而影响用户体验。但是对于一些特殊企业客户,在涉及到资金、股票等等金融业务交易时,考虑到其业务的安全性,他们在原有业务可能已经用了客户端证书认证,对于这类客户在接入 CDN 时,必然也要支持客户端证书认证。

简单来说,客户端证书认证就是在单向认证 SSL 握手流程中加入了两个流程:

  1. 服务器发送 Certificate Request 消息,表明本次 SSL 握手需要做客户端证书认证(如下图第3步)。
  2. 客户端收到服务器发送的 Certificate Request 消息后,需要将客户端证书通过 Certificate 消息发送给服务器(如下图第4步)。服务器收到该消息时会对客户端证书做合法性校验,包括:客户端证书是否过期,发行该证书的 CA 是否可信,用其 CA 公钥对该证书的签名做校验是否成功,该证书是否已经被吊销。若其合法性校验成功则继续后面的握手流程,否则服务器会握手失败并中断连接。

https6_1

但是,如果客户端没有发送客户端证书,服务器也会握手成功,这就需要在应用程序中做判断是否有客户端证书,若客户端没有发送则要关闭连接并清除 session 缓存(代码请参考 Tengine 的 ngx_http_process_request 函数)。

实现

Tengine 是很容易配置客户端证书认证的,相关的几个指令如下:

ssl_verify_client        on;   #是否启用客户端证书认证
ssl_verify_depth         1;    #对客户端证书证书链的认证深度
ssl_client_certificate   /opt/tengine/conf/xxx.crt;  #指定用于校验客户端证书的CA证书
目录
相关文章
|
5天前
|
网络协议 应用服务中间件 网络安全
免费泛域名https证书教程—无限免费续签
随着互联网安全意识提升,越来越多网站采用HTTPS协议。本文介绍如何通过JoySSL轻松获取并实现免费泛域名SSL证书的无限续签。JoySSL提供永久免费通配符SSL证书,支持无限制域名申请及自动续签,全中文界面适合国内用户。教程涵盖注册账号、选择证书类型、验证域名所有权、下载与安装证书以及设置自动续签等步骤,帮助网站简化SSL证书管理流程,确保长期安全性。
|
9天前
|
对象存储 CDN
阿里云CDN边缘脚本实现+字符转义%2B
对象存储OSS中,文件名包含+字符时,请求URL未转义会导致404错误。解决方法是将URL中的+字符转义为%2B,或通过CDN/DCDN边缘脚本自动转义。示例脚本:若URI包含+,则替换为%2B。
51 10
|
19天前
|
安全 算法 网络协议
ip地址https证书免费试用—政企单位专用
IP地址HTTPS证书为基于公网IP的服务提供加密保护,JoySSL等机构提供免费试用,帮助政企用户降低安全成本。用户需注册账号、申请证书、提交CSR并验证IP所有权,最后安装证书并测试。免费证书有效期短,但能有效保障数据安全,提升用户信任度及合规性。
|
15天前
|
安全 网络安全 数据安全/隐私保护
内网/局域网IP地址申请https证书方法
为内网/局域网IP地址申请HTTPS证书,可增强数据传输的安全性。首先确定固定的内网IP地址,选择可信的证书颁发机构,注册并申请免费或付费SSL证书,提交相关信息,支付费用(如有)。证书申请成功后,下载并配置于服务器,确保通过浏览器访问时显示为安全连接。注意定期更新证书,确保持续的安全保障。此过程适用于局域网内部通信加密,提升内网服务的安全水平。
|
19天前
|
网络协议 网络安全 Docker
将Certbot/ACME.sh自动化申请的证书自动部署到阿里云CDN
本文介绍了阿里云 CDN SSL 证书自动更新工具,定期检查证书有效期,使用Let's Encrypt 等工具签发的证书自动更新至阿里云 CDN,支持 Docker 及 .NET 8 部署,简化证书管理流程。
|
23天前
|
安全 数据安全/隐私保护
IP地址https证书免费申请教程
本教程详细介绍如何免费申请IP地址HTTPS证书,涵盖准备、申请、审核、下载与部署阶段。从确认IP地址、选择CA、注册账户到验证控制权,最后完成证书部署,确保数据传输安全。注意证书有效期较短,需及时续签。
|
3月前
|
监控 安全 搜索推荐
设置 HTTPS 协议以确保数据传输的安全性
设置 HTTPS 协议以确保数据传输的安全性
|
3天前
|
网络协议 安全 网络安全
探索网络模型与协议:从OSI到HTTPs的原理解析
OSI七层网络模型和TCP/IP四层模型是理解和设计计算机网络的框架。OSI模型包括物理层、数据链路层、网络层、传输层、会话层、表示层和应用层,而TCP/IP模型则简化为链路层、网络层、传输层和 HTTPS协议基于HTTP并通过TLS/SSL加密数据,确保安全传输。其连接过程涉及TCP三次握手、SSL证书验证、对称密钥交换等步骤,以保障通信的安全性和完整性。数字信封技术使用非对称加密和数字证书确保数据的机密性和身份认证。 浏览器通过Https访问网站的过程包括输入网址、DNS解析、建立TCP连接、发送HTTPS请求、接收响应、验证证书和解析网页内容等步骤,确保用户与服务器之间的安全通信。
26 1
|
29天前
|
安全 搜索推荐 网络安全
HTTPS协议是**一种通过计算机网络进行安全通信的传输协议
HTTPS协议是**一种通过计算机网络进行安全通信的传输协议
55 11
|
29天前
|
缓存 安全 网络协议
HTTPS协议的历史发展
HTTPS协议的历史发展
42 8