# dynv6dnscert **Repository Path**: shujtool/dynv6dnscert ## Basic Information - **Project Name**: dynv6dnscert - **Description**: dynv6 DNS验证签发证书,并自动续签。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-04-10 - **Last Updated**: 2025-04-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: 证书签发 ## README dynv6 DNS验证签发证书 # 安装openssl Ubuntu & Debian: ```plain sudo apt update sudo apt install openssl ``` CentOS: ```bash yum install openssl ``` OpenWrt: ```plain opkg update opkg install openssl ``` # acme安装 ```bash # 使用安装包安装 tar zxvf acme.sh-master.tar.gz cd acme.sh-master ./acme.sh --install -m <你的邮箱> ``` 也可以使用以下2种方法: ```bash curl https://get.acme.sh | sh acme.sh --register-account -m <你的邮箱> ``` ```bash #国内 git clone https://gitee.com/neilpang/acme.sh.git cd acme.sh ./acme.sh --install -m <你的邮箱> ``` ### 创建 一个 bash 的 alias, 方便你的使用 ```bash alias acme.sh=~/.acme.sh/acme.sh ``` # 使用openssl创建密钥对 > dynv6支持的密钥算法仅为:ssh-ed25519, ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, and ecdsa-sha2-nistp521 。需注意部分云服务商的系统可能不兼容此类密钥算法,部署前建议验证目标平台支持性。但实际应用中,由于多数VPS服务商默认提供固定IP地址,无需依赖API动态更新证书的特性,可直接通过常规密钥认证方式完成安全连接配置。 ### 创建.ssh文件夹 ```bash mkdir -p ~/.ssh && cd ~/.ssh ``` ### 创建ed25519算法证书 ```bash ssh-keygen -t ed25519 -f dynv6_ed25519 -C "<你的邮箱>" ``` ```bash [root@shuj .ssh]# ll ~/.ssh/ 总用量 12 -rw------- 1 root root 411 4月 9 10:08 dynv6_ed25519 #私钥 -rw-r--r-- 1 root root 99 4月 9 10:08 dynv6_ed25519.pub #公钥 ``` ## 上传公钥到dynv6 [注册账号](https://gitee.com/link?target=https%3A%2F%2Fdynv6.com%2Fusers%2Fsign_in) [创建域名](https://gitee.com/link?target=https%3A%2F%2Fdynv6.com%2Fzones) [创建HTTP TOKENS](https://dynv6.com/keys) 点击 `HTTP TOKENS `添加 -->选择你创建的(Zone)域名 --> 点击`Generate HTTP Token`创建 [上传公钥内容(SSH Public Keys)](https://dynv6.com/keys#ssh-keys) 查看公钥内容,查到什么就上传什么不用删减 ```bash cat ~/.ssh/dynv6_ed25519.pub ``` 点击 `Add SSH Public Key `添加 --> 上传公钥内容 -->选择你创建的(Zone)域名 --> 点击`Add SSH Public Key`创建 # 执行申请证书 ```bash export KEY="/root/.ssh/dynv6_ed25519" ``` ```bash export DYNV6_TOKEN="<从dns服务商获取的httptoken>" ``` ```bash acme.sh --issue --dns dns_dynv6 -d <你的域名> ``` 最终结果如下 ```bash -----END CERTIFICATE----- [2025年 04月 09日 星期三 10:20:46 CST] Your cert is in: /root/.acme.sh/xx.dynv6.net_ecc/xx.dynv6.net.cer [2025年 04月 09日 星期三 10:20:46 CST] Your cert key is in: /root/.acme.sh/xx.dynv6.net_ecc/xx.dynv6.net.key [2025年 04月 09日 星期三 10:20:46 CST] The intermediate CA cert is in: /root/.acme.sh/xx.dynv6.net_ecc/ca.cer [2025年 04月 09日 星期三 10:20:46 CST] And the full-chain cert is in: /root/.acme.sh/xx.dynv6.net_ecc/fullchain.cer ``` ```bash [Wed Apr 9 10:39:55 AM CST 2025] Your cert is in: /root/.acme.sh/xx.dynv6.net_ecc/xx.dynv6.net.cer [Wed Apr 9 10:39:55 AM CST 2025] Your cert key is in: /root/.acme.sh/xx.dynv6.net_ecc/xx.dynv6.net.key [Wed Apr 9 10:39:55 AM CST 2025] The intermediate CA cert is in: /root/.acme.sh/xx.dynv6.net_ecc/ca.cer [Wed Apr 9 10:39:55 AM CST 2025] And the full-chain cert is in: /root/.acme.sh/xx.dynv6.net_ecc/fullchain.cer ``` 给证书赋予权限 ```bash chmod 644 /root/.acme.sh/xx.dynv6.net_ecc/* chmod 755 /root/.acme.sh/xx.dynv6.net_ecc ``` ## 查看ACME支持的厂商列表 [https://github.com/acmesh-official/acme.sh/wiki/dnsapi](https://github.com/acmesh-official/acme.sh/wiki/dnsapi)