SSL证书迁移:从Let’s Encrypt全面转向ZeroSSL

背景说明

原使用Let’s Encrypt证书因其良好浏览器兼容性、ACME自动化部署支持和泛域名证书能力。但由于关键技术问题,决定全面更换为ZeroSSL提供的SSL证书解决方案。

放弃Let’s Encrypt的核心原因

1. OCSP验证访问故障

  • OCSP验证域名因未知原因无法访问
  • 服务器开启OCSP装订仅部分缓解问题
  • iOS端Chromium浏览器(Chrome、新版Edge)仍强制验证
  • 3秒超时等待影响用户体验

2. 根证书兼容性问题

  • Let’s Encrypt的X3根证书即将到期
  • 新签发根证书有效期较短
  • 安卓7以下系统无法信任新证书
  • 2016年前设备存在兼容性障碍

选择ZeroSSL的优势

  • ACME自动化支持:完整兼容ACME协议自动化部署
  • 泛域名证书:支持通配符证书申请
  • 免费政策:通过ACME方式无限制签发证书
  • 工具集成:acme.sh官方支持一键切换CA
  • 成本效益:零费用实现证书迁移
zerossl证书

acme.sh工具迁移实操

环境准备

  • 管理工具:使用acme.sh统一管理证书
  • DNS验证:采用DNS API自动化验证方式
  • 支持厂商:Cloudflare、DNSPod、GoDaddy等数十家DNS服务商
  • 配置参考:官方文档 https://github.com/acmesh-official/acme.sh/wiki/dnsapi
zerossl支持acme

步骤详解

  1. 账户注册
    • 访问ZeroSSL注册页面:https://app.zerossl.com/signup
    • 创建免费账户
  2. 获取EAB凭证
    • 进入开发者页面:https://app.zerossl.com/developer
    • 生成并保存eab-kid和eab-hmac-key
  3. 注册ACME账户
    acme.sh --register-account --server zerossl \
    --eab-kid 你的eab-kid \
    --eab-hmac-key 你的eab-hmac-key
  4. 切换默认CA
    acme.sh --set-default-ca --server zerossl
  5. 签发新证书
    acme.sh --issue --dns dns_dp -d ffis.me -d *.ffis.me
  6. 安装证书
    acme.sh --install-cert -d ffis.me \
    --key-file /usr/local/nginx/conf/ssl/ffis.me.key \
    --fullchain-file /usr/local/nginx/conf/ssl/ffis.me.crt \
    --reloadcmd "systemctl force-reload nginx.service"

Nginx配置更新

修改网站Nginx配置文件中的SSL证书路径指向新证书位置,完成配置更新。

效果验证

  • OCSP问题解决:完全避免OCSP无法访问问题
  • 兼容性提升:更好的老设备支持能力
  • 性能优化:消除3秒验证超时延迟
  • 自动化维护:保持ACME自动续期功能

注意事项

  • 确保DNS API配置正确
  • 备份原证书以防迁移失败
  • 验证新证书安装后的网站访问
  • 监控自动续期功能正常运行
© 版权声明
THE END
喜欢就支持一下吧
点赞13赞赏 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容