首页
/ Lego项目v4.22.0版本发布:ACME客户端功能全面升级

Lego项目v4.22.0版本发布:ACME客户端功能全面升级

2025-06-07 06:27:17作者:鲍丁臣Ursa

Lego是一个用Go语言编写的ACME客户端库,主要用于自动化管理SSL/TLS证书。ACME(Automated Certificate Management Environment)是一种自动化证书管理环境协议,最著名的实现就是Let's Encrypt免费证书服务。Lego项目通过实现ACME协议,让开发者能够轻松地为网站自动获取和更新SSL证书。

核心功能更新

1. DNS提供商支持扩展

本次4.22.0版本新增了对两个DNS提供商的支持:

  • Spaceship DNS服务:这是一个新兴的DNS解析服务,现在可以通过Lego实现自动化证书管理
  • myaddr系列域名服务:包括myaddr.tools、myaddr.dev和myaddr.io三个域名的DNS记录管理

这些新增支持使得使用这些DNS服务的用户能够更方便地实现证书自动化管理。

2. ACME-DNS功能增强

ACME-DNS是一种专门用于ACME协议验证的DNS服务。本次更新对ACME-DNS功能进行了多项改进:

  • 新增HTTP存储支持:现在可以通过HTTP接口来管理ACME-DNS记录
  • 允许HTTP存储服务器创建CNAME记录:简化了配置流程
  • 修复了文件路径处理问题:提高了跨平台兼容性

这些改进使得ACME-DNS的集成更加灵活和可靠。

3. 命令行工具功能增强

Lego不仅是一个库,也提供了强大的命令行工具。本次更新对命令行工具进行了多项改进:

  • 新增环境变量支持:现在可以通过环境变量指定邮箱地址,简化自动化部署
  • 添加调试标志:新增LEGO_DEBUG_ACME_HTTP_CLIENT环境变量,可以详细调试与ACME服务器的通信
  • 支持自定义私钥:用户现在可以指定自己的私钥文件,而不是自动生成
  • 增加HTTP挑战延迟选项:可以设置HTTP挑战的延迟时间,解决某些特殊环境下的验证问题
  • 添加钩子超时控制:为run和renew命令增加了hook-timeout参数,防止钩子脚本执行时间过长

4. 证书管理功能改进

在证书管理方面,本次更新带来了两个重要功能:

  • 支持CSR邮件设置:现在可以在证书签名请求(CSR)中指定邮件地址
  • 状态管理重构:改进了证书状态的管理机制,提高了可靠性

技术细节优化

除了上述功能更新外,本次版本还包含了一些技术优化:

  • 移除了netcup DNS提供商的TTL选项,简化了配置
  • 改进了文档中的单位和默认值说明,提高了易用性
  • 修复了多余的调试日志输出问题
  • 增加了Profiles Extension支持,提供了更灵活的证书配置方式

总结

Lego 4.22.0版本在DNS提供商支持、ACME-DNS集成、命令行工具功能和证书管理等方面都有显著改进。这些更新不仅增加了对新服务的支持,也提高了现有功能的稳定性和易用性。对于需要自动化管理SSL证书的开发者来说,这个版本提供了更多选择和更好的控制能力。

特别值得一提的是新增的调试功能和超时控制,这些改进使得在复杂环境中部署和调试证书自动化流程变得更加容易。而状态管理的重构则为长期运行的证书管理任务提供了更高的可靠性。

登录后查看全文
热门项目推荐
相关项目推荐