使用 acme.sh 申请 SSL 证书

💡 原文中文,约2300字,阅读约需6分钟。
📝

内容提要

本文介绍了使用 acme.sh 自动申请和更新 SSL 证书的方法。由于免费证书有效期缩短至三个月,手动操作变得繁琐。通过安装 acme.sh 并配置 DNS,可以简化证书申请流程,实现自动化,提高效率。

🎯

关键要点

  • 免费 SSL 证书有效期缩短至三个月,手动申请变得繁琐。
  • acme.sh 是一个实现 ACME 协议的脚本,用于申请或更新免费 SSL 证书。
  • 安装 acme.sh 的命令为:curl https://get.acme.sh | sh -s email=my@example.com。
  • 手动申请证书需要添加 TXT 记录以验证域名权限,命令为:acme.sh --issue --dns -d mydomain.com -d '*.mydomain.com'。
  • 证书生成后保存在 ~/.acme.sh/ 目录下,包括证书、密钥和全链路证书。
  • acme.sh 支持自动申请证书,自动添加和删除 TXT 记录。
  • 使用自动申请需要获取域名服务商的 AccessKey,并设置 DNS 权限。
  • 自动申请命令为:acme.sh --issue --dns dns_ali -d mydomain.com -d '*.mydomain.com'。
  • AccessKey 会明文保存在 ~/.acme.sh/account.conf 文件中,需注意安全。
  • acme.sh 会添加定时任务自动检查证书更新,使用 crontab -l 查看任务列表。
  • 默认证书颁发机构为 ZeroSSL,可用 --set-default-ca 修改为 Let's Encrypt。

延伸问答

如何使用 acme.sh 安装 SSL 证书?

可以通过运行命令 curl https://get.acme.sh | sh -s email=my@example.com 来安装 acme.sh。

手动申请 SSL 证书需要哪些步骤?

手动申请需要运行 acme.sh --issue --dns -d mydomain.com -d '*.mydomain.com' 命令,并添加 TXT 记录以验证域名权限。

acme.sh 如何实现自动申请 SSL 证书?

通过获取域名服务商的 AccessKey,并运行 acme.sh --issue --dns dns_ali -d mydomain.com -d '*.mydomain.com' 命令即可实现自动申请。

使用 acme.sh 申请证书时需要注意哪些安全问题?

AccessKey 会明文保存在 ~/.acme.sh/account.conf 文件中,建议在申请后修改或删除该文件中的 AccessKey。

acme.sh 生成的证书文件存放在哪里?

证书文件保存在 ~/.acme.sh/ 目录下,包括 mydomain.com.cer、mydomain.com.key、ca.cer 和 fullchain.cer。

如何查看 acme.sh 的定时任务?

可以运行 crontab -l 命令查看当前系统的定时任务列表。

➡️

继续阅读