跳转至

零信任安全实战

零信任时代,mTLS双向认证实战指南

一个真实的安全事故

去年某互联网公司的运维小王接到告警:内部API接口被疯狂调用,数据泄露风险极高。排查后发现,攻击者绕过了传统的API Key验证,直接伪装成合法客户端发起请求。

问题出在哪?传统的HTTPS只验证服务器身份,服务器却从不验证客户端是谁。这就像你租房子,你只确认了房东是真的,但房东从来不查你的身份证。如果有人冒充租客混进来,后果不堪设想。

mTLS

mTLS:给安全加上"双保险"

mTLS(Mutual TLS,双向认证)解决了这个问题。它让通信双方都出示"身份证":

  1. 客户端验证服务器:你是真的服务器吗?
  2. 服务器验证客户端:你是真的客户端吗?

只有双方都通过验证,连接才能建立。这就是零信任架构的核心理念:永不信任,始终验证

阿里云ESA是什么?

ESA全称 Edge Security Acceleration,是阿里云推出的边缘安全加速服务。简单说,它把CDN加速、DDoS防护、WAF防火墙、SSL证书管理打包在一起,在全球3200多个节点为你的网站保驾护航。

几个关键数字: * 全球节点:3200+ * 端到端延迟:平均50ms * DDoS防护:Tbps级别 * CC攻击防护:千万级QPS

最重要的是,ESA的免费套餐就支持mTLS双向认证。

mTLS配置实战

ESA控制台的操作很直观,整个流程可以分成四步:

1. 创建客户端证书

登录ESA控制台 → 站点管理 → 选择你的站点 → 找到"客户端证书"选项。

点击"创建证书",系统会引导你完成: * 选择CSR生成方式(推荐自动) * 选择私钥类型(RSA 2048或ECDSA P-256) * 设置证书有效期(1-3年)

⚠️注意:证书创建成功后,务必立即复制证书和私钥。关闭弹窗后就再也看不到了,这是出于安全考虑的设计。

创建客户端证书

2. 绑定域名

证书创建好后,点击"配置"按钮,输入需要保护的域名:api.yourdomain.com

绑定域名

一次最多支持50个域名,而且这些域名必须属于你当前管理的站点。

3. 部署到客户端

把生成的客户端证书部署到你的应用程序中: * 移动App:打包到应用资源 * Web应用:配置到HTTP客户端 * IoT设备:烧录到固件 * 后台服务:配置到服务调用方

ESA的优势在于,每个账户有独立的CA证书。所有ESA签发的客户端证书,ESA节点都会自动信任,不需要额外配置信任链。

4. 配置WAF拦截规则

光有证书还不够,你需要让ESA主动拦截非法请求。进入WAF自定义规则页面,新建一条规则:

  • 匹配条件:已验证客户端证书 -> 否
  • 主机名api.yourdomain.com
  • 执行动作:拦截(返回403)

这样一来,没有携带有效客户端证书的请求会被直接拒绝,连你的源站都到不了。

配置WAF拦截规则1 配置WAF拦截规则2

进阶:回源双向认证

如果你的源站也需要验证ESA的身份(比如金融、政务类应用),可以开启"回源双向校验"。

配置路径:ESA控制台 → 站点管理 → 源站证书 → 开启"回源双向校验"

这样整个通信链路就变成了: 回源双向认证 客户端 <--(mTLS)--> ESA节点 <--(mTLS)--> 源站

实现真正的端到端加密,防止任何中间人攻击。

几个典型应用场景

场景一:保护开放API

很多公司把核心业务能力封装成API开放给合作伙伴。传统API Key容易被泄露、伪造。mTLS让只有持有合法证书的客户端才能调用,安全性大幅提升。

场景二:企业内部系统远程访问

员工在家办公需要访问内部系统,传统VPN体验差、配置复杂。用ESA mTLS + 零信任架构,员工无感知就能安全接入,IT部门也省心。

场景三:IoT设备接入

海量IoT设备的身份验证和证书管理是个头疼事。ESA自动签发证书,设备出厂时预置好,上电即连,即插即用。

场景四:微服务间通信

服务网格(Service Mesh)配合mTLS,让每个微服务之间的通信都经过双向认证,实现"东西向"流量的安全防护。

mTLS和传统方案对比

对比维度 传统API Key OAuth 2.0 ESA mTLS
安全性
部署难度 简单 复杂 较简单
性能开销
防中间人攻击 不支持 部分支持 完全支持
证书管理 手动 令牌刷新 自动续期

从表中可以看出,mTLS在安全性上优势明显,部署难度又比OAuth 2.0低,是个不错的折中方案。

常见问题解答

Q:ESA mTLS支持自定义CA吗? 支持。除了使用ESA内置的CA,你也可以通过OpenAPI配置自己的客户端证书。

Q:证书过期了怎么办? ESA会在证书过期前自动提醒。你可以提前创建新证书,在客户端平滑切换,业务无感知。

Q:证书丢了能吊销吗? 可以。控制台里找到对应证书,点击"吊销"按钮,吊销立即生效。

Q:mTLS会影响性能吗? TLS握手在ESA边缘节点完成,对终端用户几乎无感知。而且ESA全球3200+节点,就近处理,延迟很低。

Q:免费版能用mTLS吗? 能用。ESA Entrance免费套餐就包含SSL/TLS全链路双向认证功能。

写在最后

在零信任成为主流的今天,mTLS双向认证已经从"可选项"变成了"必选项"。阿里云ESA把这个过程简化到了极致:一键签发证书。


关注公众号「碳基硅坊」,获取更多IT技术与AI实践干货!

关注公众号