SSL 证书签发后不会自动生效,需要将其部署到对外提供访问服务的位置,浏览器才会将您的网站标记为安全。本文介绍证书应部署在哪些位置,以及各位置可选的部署方案。
部署前的准备
开始部署前,请确认您已拥有由权威机构签发的 SSL 证书。如需购买和申请签发证书,请参见购买正式证书和向CA(证书颁发机构)提交申请。
同时,请确认您的证书是国际标准 SSL 证书(RSA/ECC)还是国密标准 SSL 证书(SM2),两者可选的部署方案不同。
确认证书需要部署在哪些位置
访问者访问您的网站时,请求可能先经过 CDN、Web 应用防火墙(WAF)、负载均衡等产品,最终到达您的服务器。请求要以 HTTPS 方式访问某个环节,就需要在该环节部署证书;未部署证书的链路仍是 HTTP 访问,传输的数据不受保护。因此,需要部署证书的位置可能不止一处,常见的有 Web 服务器(如 Nginx、Apache、IIS)、负载均衡(ALB)、CDN、WAF、云原生 API 网关等。
常见的情况有以下两种:
直接访问 Web 服务器
访问请求不经过 CDN、WAF 等产品,直接到达您的服务器时,证书只需部署在该服务器的 Web 服务上。
访问请求经过 CDN、WAF 等产品
访问请求经过 CDN、WAF 等产品,此时,需要在每一段链路的入口处部署证书,该段才能以 HTTPS 方式访问。以"访问者 → CDN → WAF → 负载均衡 → 您的服务器"为例:仅在 CDN 上部署证书时,只有访问者到 CDN 这一段的 HTTPS 访问,CDN 之后到服务器的链路仍是 HTTP 访问;如需实现访问者到服务器全程 HTTPS 访问,则上述四处均需各部署一份证书。
判断部署场景
确认证书需要部署的位置后,请参照下表判断每处属于哪种部署场景,再前往对应章节选择部署方案。
场景说明 | 参考文档 |
域名解析或 CNAME 指向阿里云的托管型产品,由该产品对外提供 HTTPS 访问。例如 CDN、全站加速 DCDN、WAF、DDoS 高防、负载均衡(ALB/NLB/CLB)、对象存储 OSS、云虚拟主机、云原生 API 网关、容器服务 ACK 等。 | |
域名直接解析到服务器的公网 IP,HTTPS 由您在服务器上自行安装的 Web 服务提供(如 Nginx、Apache、Tomcat、IIS)。服务器为阿里云 ECS、轻量应用服务器、其他云平台的云主机或自有 IDC 服务器时,均属于此场景。 | |
域名解析或 CNAME 指向腾讯云、AWS、华为云等第三方云平台的 CDN、WAF、负载均衡等云产品,由该产品对外提供 HTTPS 访问。 | |
混合场景。例如域名解析至 CDN,由 CDN 将请求转发至您自建的 Nginx 服务器,且需要实现访问者到服务器全程 HTTPS 访问。 | 对涉及的场景分别执行一次部署,在每处位置各部署一份证书。 |
证书部署过程中如有任何问题需要协助,请联系产品技术专家进行咨询,详情请参见专家一对一服务。
场景一:在阿里云产品中部署证书
证书需要部署在 CDN、WAF、负载均衡等阿里云托管型产品上时,有两种方式:在数字证书管理服务控制台一键推送,或登录对应云产品控制台上传证书。推荐前者,可省去下载和上传证书文件的步骤。
方案一:在数字证书管理服务控制台一键部署(推荐)
在数字证书管理服务控制台使用云产品部署功能,可将证书一键推送到下表中的云产品,无需手动下载和上传证书文件。具体操作请参见云产品部署:部署 SSL 证书至 SLB/CDN/WAF 等云产品。
若您使用的产品不在"云产品部署"功能支持的范围内,请参考该产品的文档进行部署。支持一键推送的产品见下方表格。
以下表格中的"更新已有证书"表示云产品已部署过证书,当前需要替换证书的场景。
部分云产品仅在更新已有证书时支持一键部署,首次部署证书需在云产品控制台完成,具体请参见方案二:在云产品控制台部署。各云产品的支持情况见下表适用条件列。
云产品 | 应用场景 | 适用条件 |
云虚拟主机 | HTTPS 加密访问网站场景 | 首次部署证书、更新已有证书 |
容器镜像服务 ACR | HTTPS 域名访问容器镜像服务企业版实例场景 | 更新已有证书 |
容器服务 Kubernetes 版 ACK | ACK 托管与专有集群中更新 AlbConfig 证书和 Secret 证书 重要 请勿在容器服务 ACK 中手动修改 Secret,系统会自动创建新的 Secret。 | 更新已有证书 |
Serverless 应用引擎-网关路由 | 网关路由转发协议配置 HTTPS 场景(ALB 和 CLB) | 更新已有证书 |
函数计算 FC | HTTP 函数场景 | 更新已有证书 |
微服务引擎-云原生网关 | 云原生网关路由场景 | 更新已有证书 |
云原生 API 网关 | HTTPS 域名访问 API 场景 | 更新已有证书 |
全球加速 GA | HTTPS 域名安全加速访问场景 | 更新已有证书 |
| 通过 HTTPS 监听转发 HTTPS 协议请求的场景(服务器证书) 说明 部署客户端证书,请参见部署客户端证书。 | 更新已有证书 |
内容分发网络 CDN | HTTPS 安全加速场景 | 首次部署证书、更新已有证书 |
全站加速 DCDN | HTTPS 安全加速场景 | 首次部署证书、更新已有证书 |
边缘安全加速(ESA) | HTTPS 安全加速场景 | 更新已有证书 |
对象存储 OSS | 通过 HTTPS 方式访问 OSS 服务场景 说明 绑定 CDN 加速域名,需在 CDN 控制台替换证书。 | 更新已有证书 |
Web 应用防火墙(WAF) | CNAME 接入场景 | 更新已有证书 |
DDoS 高防 | DDoS 高防域名接入场景 | 更新已有证书 |
视频直播 | 推/播流 HTTPS 安全加速场景 | 首次部署证书、更新已有证书 |
视频点播 | 分发加速场景 | 首次部署证书、更新已有证书 |
人工智能平台 PAI | 模型在线服务 EAS(Elastic Algorithm Service):专属网关使用自定义域名 | 更新已有证书 |
方案二:在云产品控制台部署
如果云产品不支持一键部署,或您需要在云产品侧自行操作,可在证书列表中下载证书文件,再登录对应云产品控制台上传并配置证书。各云产品的部署文档如下表所示。
云产品 | 应用场景 | 部署文档 |
云虚拟主机 | HTTPS 加密访问网站场景 | |
容器镜像服务 ACR | HTTPS 域名访问容器镜像服务企业版实例场景 | |
容器服务 Kubernetes 版 ACK | ACK 托管与专有集群中更新 AlbConfig 证书和 Secret 证书 重要 请勿在容器服务 ACK 中手动修改 Secret,系统会自动创建新的 Secret。 | |
Serverless 应用引擎-网关路由 | 网关路由转发协议配置 HTTPS 场景(ALB 和 CLB) | |
函数计算 FC | HTTP 函数场景 | |
微服务引擎-云原生网关 | 云原生网关路由场景 | |
云原生 API 网关 | HTTPS 域名访问 API 场景 | |
全球加速 GA | HTTPS 域名安全加速访问场景 | |
| 通过 HTTPS 监听转发 HTTPS 协议请求的场景(服务器证书) 说明 部署客户端证书,请参见部署客户端证书。 |
|
内容分发网络 CDN | HTTPS 安全加速场景 | |
全站加速 DCDN | HTTPS 安全加速场景 | |
边缘安全加速(ESA) | HTTPS 安全加速场景 | |
对象存储 OSS | 通过 HTTPS 方式访问 OSS 服务场景 说明 绑定 CDN 加速域名,需在 CDN 控制台替换证书。 | |
Web 应用防火墙(WAF) | CNAME 接入场景 |
|
DDoS 高防 | DDoS 高防域名接入场景 | |
视频直播 | 推/播流 HTTPS 安全加速场景 | |
视频点播 | 分发加速场景 | |
人工智能平台 PAI | 模型在线服务 EAS(Elastic Algorithm Service):专属网关使用自定义域名 | |
云·速成美站 | HTTPS 加密访问网站场景 | |
云·企业官网 | HTTPS 加密访问网站场景 |
部署国密标准 SSL 证书(SM2,仅 CDN、DCDN 和 DDoS 防护产品支持)
内容分发网络 CDN:调用 SetCdnDomainSMCertificate 接口设置国密证书。
全站加速 DCDN:配置国密标准 SSL 证书。
DDoS 防护:配置国密标准 SSL 证书。
场景二:在自建 Web 服务器中部署证书
HTTPS 由您在服务器上自行安装的 Web 服务提供时,证书需部署到该 Web 服务中。有两种方案:
自动部署:在数字证书管理服务控制台完成配置后,由控制台将证书部署至服务器,无需逐台登录。阿里云 ECS、轻量应用服务器,以及其他云厂商服务器和本地自建服务器均可使用,但适用条件不同。
手工部署:下载证书文件后登录服务器修改 Web 服务配置。适用于所有服务器,也是不满足自动部署条件时(例如证书为国密标准 SM2)的通用方案。
部署教程按 Web 服务器类型(如 Nginx、Apache、Tomcat、IIS)和操作系统区分,因此需先确认服务器上运行的是哪种 Web 服务。可通过浏览器开发者工具查看响应头中的 Server 字段,或登录服务器查看监听 80/443 端口的进程,具体方法请参见如何查看Web服务器类型?。
方案一:通过控制台自动部署
在数字证书管理服务控制台完成配置后,由控制台将证书部署至服务器,无需逐台登录,可提升部署效率并降低配置风险。根据服务器所在位置,有以下两种方式,请按适用服务器和使用条件选择:
部署方式 | 适用服务器 | 使用条件 |
阿里云 ECS、轻量应用服务器 | 仅支持国际标准 SSL 证书(RSA/ECC)。 | |
其他云厂商服务器、本地自建服务器(也支持阿里云 ECS) |
|
方案二:登录服务器手工部署
下载证书文件后登录服务器修改 Web 服务配置。此方案适用于所有服务器,也是国密标准 SSL 证书唯一可用的部署方式。请按 Web 服务器类型和操作系统选择对应教程。
部署国际标准 SSL 证书(RSA/ECC):
服务器操作系统
部署教程
Linux 系统
Windows 系统
部署国密标准 SSL 证书(SM2):
服务器操作系统
证书部署教程
适用品牌
Linux 系统
所有品牌
WoSign
WoSign
Windows 系统
WoSign
说明目前,阿里云仅提供 Tengine、Nginx、Apache 服务器国密标准证书的安装教程。不同版本的操作系统和 Web 服务器,部署操作可能有所差异。
场景三:在第三方云平台的云产品中部署证书
证书需要部署在腾讯云、AWS、华为云的云产品上时,可在数字证书管理服务控制台完成部署,支持的平台和服务为:
腾讯云的内容分发网络 CDN、Web 应用防火墙、负载均衡 CLB;AWS 的 Amazon CloudFront(CDN)、负载均衡(ALB、NLB 和 CLB)。
华为云的内容分发网络 CDN、弹性负载均衡 ELB。
具体操作请参见多云部署:部署证书至三方云平台。
上述范围之外的服务,可参考各云厂商的官方文档部署:
常见问题
如何下载根证书?
可参考下载和安装根证书,下载相关证书品牌的根证书。
证书链不完整、缺少中间证书时怎么办?
客户端的根证书和中间证书缺失或过期时,请参考如何解决网站SSL证书链不完整,下载安装缺失的根证书或中间证书后,重新尝试访问。
部署证书时提示"证书链中的一个或多个中间证书丢失"?
部分服务端系统部署 SSL 证书时(如 Windows 2008 R2 中的 IIS),可能会提示此错误。需在服务端安装缺失的根证书或中间证书。
非国密 SSL 证书在国企场景下应参考国际版还是国密版部署文档?
应参考国际标准 SSL 证书(RSA/ECC)的部署教程。申请和使用的证书为非国密算法的国际标准 SSL 证书(如 RSA、ECC),无论企业性质如何,都应按照国际通用标准进行部署和配置。