在 CloudXNS 上使用 Let’s Encrypt 的 DNS-01 验证

以往我使用 Let’s Encrypt 获取证书,都使用 TLS-SNI-01 验证。因为 80 端口被电信封锁,所以无法使用 HTTP-01 验证,自然也无法使用 webroot 插件。每次获取证书时,都必须手动停止 nginx 服务器,certbot 客户端才能创建自己的验证服务器。这样非常不方便。

今天用 Node.js 写了一个简易的操作 CloudXNS 的脚本,项目路径 https://github.com/t123yh/letsencrypt-cloudxns/。本来打算用 Python 写的,但没时间现学,就用 Node.js 凑合着写了。

比起网上现有的项目,它的优势在于,它使用 certbot 客户端,在申请证书后,即会自动加入 certbot 全局的证书列表,今后 renew 的操作都是自动完成的。网上同类的项目似乎都是基于 letsencrypt.sh ,不是很方便,所以自己重新写了一个。