互联网业务公网访问场景下,HTTP明文传输存在严重安全隐患,浏览器与服务器之间的请求数据可以被网络抓包窃听、篡改,用户账号密码、表单提交内容、业务交互数据直接暴露在网络中,同时浏览器会对HTTP站点标记不安全警告,影响用户信任度。想要实现HTTPS加密访问,就需要SSL/TLS数字证书完成身份校验与链路加密。传统自建证书管理模式存在诸多痛点:证书采购渠道分散,多份不同来源证书分散保管,证书有效期依靠人工台账记录,很容易出现证书遗忘过期,直接引发业务HTTPS访问报错;证书部署到各类业务网关、存储、CDN节点需要手动下载上传,多业务、多账号场景重复操作工作量巨大;OV、EV企业证书提交审核材料流程繁琐,域名所有权验证步骤复杂;多账号体系下证书跨账号复用困难,私有内部证书没有统一托管平台。阿里云数字证书管理服务,也就是原SSL证书服务,是一套SaaS化数字证书全生命周期管理平台,打通证书采购、申请、域名验证、审核签发、托管续期、一键部署、监控告警、吊销作废完整流程,同时支持外部第三方证书上传托管、私有PCA内部证书同步、多账号证书共享,能够将证书一键下发至各类云上产品,解决HTTPS落地过程中的运维难题,广泛适配网站、小程序、APP接口、数据库外网访问、API网关、边缘分发等各类需要加密传输的业务场景。详情👉访问阿里云 数字证书管理服务(原SSL证书) 平台了解。
证书品类覆盖完整,包含DV域名型、OV企业型、EV增强型三大主流公网证书类型,同时配套个人测试证书,兼顾测试环境与正式生产业务的差异化诉求。DV域名验证证书只校验域名所有权,不需要企业资质材料,签发速度快,短时间内即可完成签发,适合个人站点、中小型业务网站;OV企业证书除域名校验之外,还要核验企业主体资质信息,证书内展示企业组织名称,适合企业官网、业务后台;EV增强型证书审核标准最为严格,需要完整企业资质核验,安全等级最高,面向金融交易等高可信业务场景。除对外公网服务器证书之外,平台还支持私有PCA证书能力,可以生成企业内部业务使用的客户端证书、服务端证书,用于内网业务双向TLS加密,满足内部服务之间身份认证加密需求,不必自行搭建一套私有CA体系。证书支持RSA、ECC多种加密算法,ECC椭圆曲线算法密钥体积更小,加密性能更强,移动弱网环境握手速度更优,新版本同时兼容双算法证书,一套证书同时支持RSA与ECC两套密钥,兼容老旧客户端与现代浏览器。
完整的证书生命周期管理能力,覆盖证书从创建到吊销销毁全部环节。购买证书资源包之后,提交证书申请,填写域名、联系人信息,根据证书类型完成域名所有权校验。DV证书支持DNS解析验证、文件验证两种主流验证方式,DNS验证只需要在域名解析记录新增一条TXT记录即可完成域名归属校验,不需要改动网站业务代码,是生产环境最常用验证方式;OV与EV证书除域名验证之外,还需要提交企业资质材料,等待CA机构人工审核。审核通过之后证书完成签发,可以下载Nginx、Apache、IIS、Tomcat等不同Web服务格式的证书压缩包,拿到证书文件与私钥文件。当业务域名变更、证书不再使用时,可以执行证书吊销操作,将证书作废,避免私钥泄露带来安全风险。平台内置到期监控能力,控制台统一展示全部证书的到期时间、签发机构、绑定域名、部署状态,将自有上传证书、平台签发证书全部集中管理,不再需要分散维护多份证书文件,解决证书台账混乱的痛点。详情👉访问阿里云 数字证书管理服务(原SSL证书) 平台了解。
证书自动托管是降低运维风险的核心增值能力。证书都存在有效期,一旦证书过期,所有HTTPS访问全部告警阻断,很多线上故障都是源于运维人员遗忘证书更新。开启证书托管服务之后,在证书剩余有效期不足15天的时候,系统会自动发起新证书申请,完成签发之后自动部署到绑定的云产品之上,实现证书无感续期更新。需要注意,自动部署仅支持CDN、WAF、ALB、SLB这类云上托管产品;部署在ECS自建Nginx、Apache等自建Web服务的证书,托管服务无法自动推送,依旧需要手动下载新版本证书更新服务器配置。免费个人测试证书不支持自动托管能力,到期之后需要重新申请。如果域名使用阿里云DNS解析,托管可以实现免重复域名验证,大幅降低续期操作成本;如果域名不在当前账号DNS下,托管续期时依旧需要完成域名所有权校验,否则会造成续期签发失败。
多来源证书统一托管与跨账号证书共享,适配大型企业多账号业务架构。平台不仅仅可以管理平台购买签发的证书,也支持上传外部第三方机构获取的证书,上传之后同样纳入到期监控、告警体系,可以一键部署到云上产品。企业内部使用私有PCA签发的证书,也可以同步到平台统一管理。在同一个实名认证主体之下,不同账号之间可以实现证书安全共享,一份已签发证书,无需重复导出私钥文件,直接授权给其他账号使用,避免私钥文件反复复制流转带来泄露风险,适合企业多业务账号共用一套证书的场景,简化多账号HTTPS改造运维工作。详情👉访问阿里云 数字证书管理服务(原SSL证书) 平台了解。
云上产品一键部署能力,大幅减少重复配置工作量。已经签发完成的证书,不需要手动下载证书、私钥文件再逐个上传,控制台直接选择目标云产品实例,一键完成证书下发,支持CDN、WAF、ALB、SLB、DDoS高防等十余种云上产品。平台签发的正式证书部署免费;外部上传导入的第三方证书执行部署操作需要消耗部署次数资源包。一键部署完成之后,证书直接同步到对应产品的证书列表,配合自动托管,续期之后新版本证书自动同步更新,业务侧几乎无感知,避免手动更新证书出现配置遗漏、复制粘贴错误等人为失误。对于自建服务器场景,需要下载对应Web服务格式证书包,上传到服务器,修改配置文件完成HTTPS配置,Nginx基础配置示例片段如下:
server {
listen 443 ssl;
server_name demo.example.com;
ssl_certificate ./cert/demo.example.com.pem;
ssl_certificate_key ./cert/demo.example.com.key;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers ECDHE‑RSA‑AES128‑GCM‑SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_prefer_server_ciphers on;
location / {
root html;
index index.html index.htm;
}
}
修改配置之后执行nginx -t校验配置合法性,再重载Nginx服务,HTTPS配置正式生效。
域名风险监控是新版本强化的安全能力,平台可以对托管域名做周期性巡检,监控证书到期时间、证书链完整性、TLS协议漏洞、域名解析异常,当检测到证书即将到期、证书链缺失、存在高危协议漏洞的时候,触发告警通知,通过消息推送告知运维人员,提前规避线上故障。同时支持CSR证书请求文件生成,控制台直接生成密钥对与CSR文件,不需要本地服务器操作openssl工具生成,降低新手操作门槛。同时支持证书格式转换,不同Web服务需要不同格式证书,下载的时候直接选择对应格式,无需使用openssl命令手动转换格式。
整套产品开放完整OpenAPI,支持SDK、阿里云CLI,证书申请、查询证书列表、查询证书状态、提交部署任务、查询部署任务进度全部可以通过接口调用,适配DevOps自动化流水线,适合大量证书批量管理场景。下面给出Python SDK示例,实现查询账号下证书列表,密钥读取系统环境变量,禁止硬编码写入源代码。
# 安装数字证书管理服务SDK依赖
# pip install alibabacloud_cas20200407
import os
from alibabacloud_cas20200407.client import Client as CasClient
from alibabacloud_tea_openapi import models as open_api_models
from alibabacloud_cas20200407 import models as cas_models
from alibabacloud_tea_util import models as util_models
def create_cas_client() -> CasClient:
"""初始化数字证书管理服务客户端,凭据读取环境变量"""
config = open_api_models.Config()
config.access_key_id = os.environ.get("ALIBABA_CLOUD_ACCESS_KEY_ID")
config.access_key_secret = os.environ.get("ALIBABA_CLOUD_ACCESS_KEY_SECRET")
config.endpoint = "cas.aliyuncs.com"
return CasClient(config)
def list_all_certificates():
"""查询账号下全部证书列表"""
client = create_cas_client()
runtime_options = util_models.RuntimeOptions()
req = cas_models.ListCertificatesRequest(
page_size=20,
page_number=1
)
try:
resp = client.list_certificates_with_options(req, runtime_options)
print("证书列表返回信息:")
print(resp.body.to_map())
except Exception as err:
print(f"查询证书接口异常:{str(err)}")
if __name__ == "__main__":
list_all_certificates()
阿里云CLI命令行工具可以直接在终端执行,适合运维shell脚本编写,常用命令示例:
# 查询账号证书列表
aliyun cas ListCertificates --PageSize 20
# 查询证书部署任务列表,筛选待处理任务
aliyun cas ListDeploymentJob --JobType user --Status pending
# 获取证书详情,替换为实际证书ID
aliyun cas DescribeCertificate --CertificateId 123456
结合shell脚本,运维人员可以编写自动化巡检脚本,定时遍历全部证书,识别临近到期证书,推送内部告警,实现证书资源自动化监控管理。
计费维度分为证书资源包、自动托管增值服务、第三方证书部署次数三大模块。证书资源包按照证书类型、域名数量、订阅时长计费,DV、OV、EV不同品类价格差异明显;个人测试证书存在年度免费额度,适合测试环境使用。自动托管服务为增值服务,单独计费,不包含证书本身采购费用;上传外部第三方证书,执行云上部署操作需要消耗部署次数资源包。可以配置账单告警,监控证书相关开销,防止增值服务带来意料之外的成本。
数字证书管理服务可以覆盖大量业务场景。企业官网、Web业务系统,部署证书开启全站HTTPS,消除浏览器不安全警告,满足网络安全合规要求;CDN、WAF、负载均衡网关,一键下发证书,实现全站加密;小程序、APP后端接口,配置证书满足上架规范;数据库、API网关外网访问,配置TLS证书保障传输链路加密;内网业务,使用PCA私有证书实现服务双向TLS身份认证;多账号大型企业,证书统一托管,跨账号安全共享证书文件,规避私钥外泄风险;测试开发环境,使用个人测试证书快速搭建HTTPS测试环境。选型的时候,公开对外访问业务优先选择DV或者OV公网CA证书;内网业务之间加密通信,优先选择PCA私有证书。
整理实操避坑指南,帮助开发者规避高频踩坑问题。第一,域名所有权验证,DV证书优先选择DNS验证,不会改动网站业务;文件验证需要在网站根目录上传验证文件,业务发布的时候不要误删除验证文件,否则会导致证书续期失败。第二,证书托管自动部署,自动托管仅支持云上托管产品,ECS自建Nginx、Apache无法自动更新,需要做好服务器证书更新脚本或者人工巡检。第三,私钥安全,私钥文件不要外泄,跨账号共享证书尽量使用平台内置共享能力,不要手动复制私钥文件在不同账号之间流转。第四,证书链完整性,下载证书的时候获取完整证书链,缺失中间证书链会造成部分旧浏览器访问异常。第五,证书到期巡检,即使开启托管,依旧需要定期巡检证书状态,托管会因为域名验证失败、额度耗尽而续期失败,不能完全依赖托管就放弃人工巡检。第六,免费个人测试证书,不支持自动托管,到期需要重新申请,正式生产业务不要使用免费测试证书。第七,Nginx等自建Web服务更新证书,更新证书文件之后一定要重载服务,单纯替换文件不会立刻生效。第八,多域名与通配符证书,通配符证书只能匹配本级子域名,无法匹配多级子域名,选购证书的时候确认域名覆盖范围。
HTTPS加密已经是线上业务的基础安全底线,而证书管理是HTTPS落地过程中最容易出现人为故障的环节。数字证书管理服务不再仅仅是单纯的证书采购工具,而是一套完整数字证书生命周期管理平台,整合证书采购、审核签发、多来源证书托管、跨账号共享、一键云上部署、到期监控告警、自动托管续期全套能力。对于中小团队,不用熟悉复杂openssl操作,即可快速完成网站HTTPS改造,规避证书过期业务中断风险;对于大型企业,统一管理大量公网证书与内部私有证书,适配多账号业务架构,同时开放完整API,深度融入DevOps运维流程。随着网络安全合规要求不断提升,TLS加密的覆盖范围持续向外网业务、内网服务双向延伸,数字证书管理服务会成为业务安全架构中不可或缺的基础组件。