1.
概述与适用场景
本文适用于需要在阿里云 WAF 上为站点启用 HTTPS 的运维/安全工程师。小分段:说明目标(在WAF绑定证书并启用HTTPS代理回源);适用环境(使用阿里云 WAF、已购买/申请或第三方CA证书)。
2.
准备证书所需材料
小分段:需要服务器证书(域名证书cert)、私钥(key)、中间证书链(chain/intermediate)。文件格式推荐 PEM(.pem/.crt)或 PFX(.pfx)。确保私钥与证书匹配,证书含完整链或准备好中间证书。
3.
如何从 Certificate Center 申请或导入证书
小分段:在阿里云控制台 -> 产品与服务 -> 证书服务(Certificate Center)可申请免费/付费证书;申请后在控制台下载 PEM 格式,或直接在 WAF 绑定时选择“使用阿里云证书”。也可在证书中心选择导入第三方证书,填写证书、公钥、私钥后保存。
4.
证书格式转换与校验(常用 openssl 命令)
小分段:若为 PFX 转 PEM:openssl pkcs12 -in cert.pfx -out cert.pem -nodes -clcerts -nokeys(导出证书)和openssl pkcs12 -in cert.pfx -out key.pem -nodes -nocerts(导出私钥)。检查证书:openssl x509 -in cert.pem -noout -text;检查私钥:openssl rsa -in key.pem -check;校验证书链:openssl verify -CAfile chain.pem cert.pem。
5.
上传证书到 WAF 的标准流程(控制台)
小分段:登录阿里云控制台 -> Web 应用防火墙 -> 实例列表 -> 选择实例 -> 域名管理或证书管理。点击“上传证书”或“导入证书”,分别填写:证书名称、服务器证书(PEM),中间证书(按链顺序追加在服务器证书后或单独栏),私钥(PEM,需无密码)。确认后提交。
6.
若私钥有密码如何处理
小分段:WAF 要求私钥无口令;若私钥被加密,使用openssl解密:openssl rsa -in key_with_pass.pem -out key_nopass.pem,然后上传 key_nopass.pem。注意私钥文件安全,不要在不可靠环境解密。
7.
将证书绑定到域名并启用 HTTPS
小分段:在 WAF 实例中找到域名配置 -> 编辑或新增域名 -> 启用 HTTPS(绑定 443),选择已上传证书(或阿里云证书),设置 SNI(多域名时根据域名匹配证书),保存并发布配置。若使用回源HTTPS,配置回源协议与端口并决定是否校验回源证书。
8.
回源证书与回源校验设置
小分段:如果后端(源站)为 HTTPS,建议开启回源校验并上传源站使用的 CA 或中间证书,或将“跳过回源校验”作为临时选项。注意回源证书域名需匹配回源地址或禁用严格校验。
9.
上线后验证与常用排查命令
小分段:确认 DNS 将域名 CNAME 指向 WAF 提供的地址并已生效。验证命令示例:curl -v https://yourdomain -H "Host: yourdomain";openssl s_client -connect yourdomain:443 -servername yourdomain -showcerts。检查证书链、有效期、域名匹配与浏览器信任链。
10.
常见错误及解决办法
小分段:私钥与证书不匹配(重新生成签名请求或检查文件);缺少中间证书(补齐链并按顺序拼接:服务器证书在前,随后中间证书);私钥被密码保护(解密后上传);上传格式错误(需 PEM);域名未加入 WAF 或 CNAME 未生效(补配置并等待 DNS 生效)。
11.
证书续期与平滑切换建议
小分段:建议在证书到期前 30 天监控并续期。若使用阿里云证书中心可开启自动续期并在续期后在 WAF 绑定新证书。切换时先上传新证书并测试,确认无问题后切换域名绑定,减少中断。发布后再删除旧证书。
12.
运维与安全最佳实践
小分段:使用强加密套件和 TLS1.2/1.3;定期检查证书到期并配置告警;限制私钥访问权限并使用安全通道传输私钥;尽量使用阿里云证书中心以便自动管理。
13.
问:上传证书后浏览器提示“不受信任”或链不完整怎么办?
问:上传证书后浏览器提示“不受信任”或链不完整怎么办? 答:先检查是否缺少中间证书,确保上传时服务器证书后追加中间证书并保持正确顺序;使用openssl s_client查看返回链;若使用自签或私有CA,需将根/中间证书加入受信任链或使用受信任CA签发。
14.
问:私钥有口令,不能直接上传怎么办?
问:私钥有口令,不能直接上传怎么办? 答:在受控环境下使用openssl解密私钥:openssl rsa -in enc_key.pem -out key_nopass.pem(输入口令),然后上传解密后的 key 文件。操作后应立即保护/删除临时文件,避免泄露。
15.
问:证书快到期,如何在不影响业务的情况下更换?
问:证书快到期,如何在不影响业务的情况下更换? 答:预先在 WAF 上传并验证新证书(不覆盖旧证书),在低峰期切换域名绑定到新证书并观察;验证通过后再删除旧证书或在到期后回收,若使用阿里云证书中心可启用自动续期并自动关联。