#dns #online #net #sh #acme #api #terrible

dns_online

在线.net DNS API 的简单封装

4 个版本

0.2.1 2020 年 11 月 8 日
0.1.2 2019 年 7 月 11 日
0.1.1 2019 年 3 月 9 日
0.1.0 2019 年 3 月 9 日

#45#acme

MPL-2.0 许可证

26KB
578

le_dns_online

这是什么?

le_dns_online 是一个前端,旨在为法国云服务提供商和主机商 online.net 提供 Let's Encrypt 的 DNS 验证。更具体地说,它的目标是轻松集成到 acme.sh

构建说明

由于我使用了 try_trait 功能,您现在需要使用 Rust 夜间编译器。

cargo build --release

并且二进制文件位于 'target/release/le_dns_online'。

我如何安装它?

首先,根据“构建说明”部分构建二进制文件。您只需将 'dns_online.sh' 和二进制文件 le_dns_online 添加到 '~/.acme.sh'(或您使用的任何 acme.sh 文件夹)中的 dnsapi 文件夹即可。然后,您需要更新 dns_online.sh 中的 api_key 到您的私钥(在 https://console.online.net/en/api/access 提供的)即可。

它是如何工作的?

Acme.sh 调用 'dns_online.sh' 中的 'dns_online_add' 函数,该函数调用 le_dns_online 二进制文件。

然后 le_dns_online

  1. 在当前区域添加所需的记录以进行 Let's Encrypt 验证

  2. 返回其 ID 以稍后删除记录

Acme.sh 再次接管控制,并执行认证请求。随后,它调用 'dns_online_rm',该函数再次调用 le_dns_online 二进制文件。

这次,le_dns_online 只是

  1. 根据其 ID 删除临时记录

就这样!您的证书已经验证好了;)

剩余工作

日志记录!

已知问题

请不要同时使用此程序!!!这可能会破坏正在进行的验证(或者比破坏一个免费且简单的进程略差,即使它也不太可能破坏您的 DNS 区域)。

我可以贡献力量吗?

当然,请继续!准备好深入挖掘一些糟糕的 Rust 代码吧,然而 ^_^

依赖关系

~8–18MB
~257K SLoC