Skip to content

让 acme 支持火山云引擎 DNS。解决了域名部署在火山云上都无法通过 acme.sh 通过 dns 验证生成证书的问题。

Notifications You must be signed in to change notification settings

mitkimi/acmesh_volcengine_api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 

Repository files navigation

acme.sh 火山云引擎 DNS API 插件

FYI:火山云域名解析验证速度较慢,约需要等 5~20 分钟,是正常现象。

这是一个用于 acme.sh 的火山云引擎(Volcengine)DNS API 插件,支持通过火山云引擎的 DNS API 自动签发和续期 SSL 证书。

功能特性

  • 支持通过 DNS-01 验证方式自动签发 SSL 证书
  • 自动添加和删除 DNS TXT 记录
  • 支持通配符域名证书
  • 自动续期证书

使用方法

1. 获取火山云引擎 API 凭证

  1. 登录火山云引擎控制台
  2. 进入「访问控制」->「密钥管理」
  3. 创建访问密钥(Access Key)和密钥(Secret Key)

2. 设置环境变量

在使用前,需要设置以下环境变量:

export VOLCENGINE_ACCESS_KEY_ID="你的AccessKeyID"
export VOLCENGINE_SECRET_ACCESS_KEY="你的SecretAccessKey"
export VOLCENGINE_REGION="cn-beijing"  # 可选,默认为 cn-beijing

3. 安装脚本

dns_volcengine.sh 复制到 acme.sh 的 dnsapi 目录:

cp dns_volcengine.sh /path/to/acme.sh/dnsapi/
chmod +x /path/to/acme.sh/dnsapi/dns_volcengine.sh

4. 签发证书

使用以下命令签发证书:

acme.sh --issue --dns dns_volcengine -d example.com -d *.example.com

5. 仅测试(不实际签发)

acme.sh --issue --dns dns_volcengine -d example.com --test

注意事项

  1. 确保域名已在火山云引擎 DNS 中配置
  2. 确保 API 密钥有足够的权限操作 DNS 记录
  3. 脚本会自动处理域名解析和记录管理
  4. 建议在生产环境使用前先进行测试

故障排除

问题:无法找到域名

解决方案:确保域名已在火山云引擎 DNS 控制台中添加并配置。

问题:API 认证失败

解决方案

  • 检查 VOLCENGINE_ACCESS_KEY_IDVOLCENGINE_SECRET_ACCESS_KEY 是否正确设置
  • 确认 API 密钥未过期且有 DNS 操作权限

问题:记录添加失败

解决方案

  • 检查域名解析是否正确
  • 查看 acme.sh 的日志文件获取详细错误信息
  • 使用 --debug 参数获取更详细的调试信息

参考文档

许可证

本脚本遵循与 acme.sh 相同的许可证。

About

让 acme 支持火山云引擎 DNS。解决了域名部署在火山云上都无法通过 acme.sh 通过 dns 验证生成证书的问题。

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages