oimi分享美好数字生活 oimi分享美好数字生活
  • 首页
  • AI
  • Lab
  • Apple
  • 生活方式
  • 硬件
  • 0
  • 0

Linux 下使用 acme.sh 和 NS 代管申请 Let's Encrypt 免费通配符证书

OIMI
27 3 月, 2018

Linux 下使用 acme.sh 和 NS 代管申请 Let's Encrypt 免费通配符证书-oimi分享美好数字生活

文章目录

  • 1、简介
  • 2、选择一个 DNS 服务商
    • 2.1、CloudFlare
    • 2.2、DigitalOcean
    • 2.3、Linode
    • 2.4、OVH
  • 3、选择一个域名代管方法
  • 4、示例
    • 4.1、设置 NS 代管
    • 4.2、设置 CNAME 转发
    • 4.3、使用 acme.sh 申请 Let’s Encrypt 通配符证书

 

如何使用 acme.sh 生成 Let’s Encrypt 通配符证书,而 DNS 认证签发证书一直是一个麻烦事。例如需要将 API Key 甚至是账号密码与签发脚本保存在一起,会有潜在的安全隐患;有些 DNS 服务商不提供 API,只能每三个月手工修改等等。

本文主要介绍了一种折衷的方法,将 ACME 认证域名单独托管至支持 API 的 DNS 服务商。即使 API Key 泄露,攻击者也无法篡改网站的其它 DNS 记录。

2、选择一个 DNS 服务商

2.1、CloudFlare

CloudFlare 提供免费的 DNS 和 CDN 服务,无需认证即可开通

  • 价格:免费
  • API:有
  • API 安全性:中
  • 时效:高,5秒内生效
  • 推荐度:五星

你可以在这个页面获取 API Key

2.2、DigitalOcean

DigitalOcean 是一家老牌云计算服务商,同时也提供免费的 DNS 托管服务。在其管理平台上可以随时生成或注销 API Key,以便于保护账号的安全。DigitalOcean 的免费 DNS 托管服务需要进行支付认证方可开通。绑定信用卡或 PayPal 即可完成支付认证。

  • 价格:免费
  • API:有
  • API 安全性:中
  • 时效:高,5秒内生效
  • 推荐度:五星

你可以在这个页面获取 API Key

2.3、Linode

Linode 也是一家老牌云计算服务商,同时也提供免费的 DNS 托管服务。在其管理平台上可以随时生成或注销 API Key,以便于保护账号的安全。Linode 独特的子账号功能,可以为自己开设低权限的子账号,然后在子账号中生成 API,保护主账号下服务器等数据的安全。Linode 的免费 DNS 托管服务需要进行支付认证方可开通。

值得注意的是,Linode DNS 的生效时间大约为 15 分钟,因此每次进行域名认证都要花费不少时间。

  • 价格:免费
  • API:有
  • API 安全性:高
  • 时效:低,15-20 分钟生效
  • 推荐度:四星

你可以在这个页面获取 API Key

2.4、OVH

OVH 也是一家老牌云计算服务商,成立于1999年,在提供独立服务器和云计算服务的同时也提供免费的 DNS 托管服务。在其管理平台上可以随时生成 API Token,但是注销 API Token 相当繁琐。OVH 账号需要先通过身份验证才能添加域名解析,需要上传身份证件和地址证明,比较适合已经有账号的朋友使用。

  • 价格:免费
  • API:有
  • API 安全性:高
  • 时效:高
  • 推荐度:四星

不推荐任何国内厂商,比如某 NS,某 Pod ,因为他们 DNS 服务器在国内,从而会容易导致 Let’s Encrypt 的认证服务器请求超时

3、选择一个域名代管方法

常用的域名代管包括 NS 代管和 CNAME 转发。无论如何,在 DNS 托管平台上,至少要有一个 NS 代管子域名。其他域名的认证纪录则可以用 CNAME 转发到这个代管域名上。

4、示例

本例采用的方法是 NS 代管一个任意子域名,然后利用 CNAME 转发 ACME 挑战子域名。

你也可以选择直接将 ACME 挑战子域名用 NS 代管至其他域名托管服务,做法类似,不再赘述。

本例假设你拥有两个域名 example.com 和 example.org,现在希望将 acme.example.com 转交由 DigitalOcean 域名托管服务代管,并将两个域名的 ACME 挑战子域名转发至这个子域名。

4.1、设置 NS 代管

我们以 DigitalOcean 为例

  1. 访问 DigitalOcean 的域名设置中心: https://cloud.digitalocean.com/networking/domains
  2. 添加域名 acme.example.com
  3. 访问你自己域名的设置中心
  4. 添加三条 NS 记录并等待其生效:
NS acme.example.com ns1.digitalocean.com. 1800
NS acme.example.com ns2.digitalocean.com. 1800
NS acme.example.com ns3.digitalocean.com. 1800

4.2、设置 CNAME 转发

  1. 访问你自己域名的设置中心
  2. 为每个要转发的域名添加 CNAME 转发记录并等待其生效:
CNAME _acme-challenge.example.com acme.example.com. 1800
CNAME _acme-challenge.example.org acme.example.com. 1800

4.3、使用 acme.sh 申请 Let’s Encrypt 通配符证书

先设定 API Key 变量为你自己申请的 API Key。

export DO_API_KEY=blablablablabla 你的一长串 API Key 

如需其他的 DNS ,请修改 DO_API_KEY 为对应的 API 名称,详见 acme.sh/dnsapi

接着根据你的实际需要,执行以下命令,为这些域名签署证书。

4 个域名在同一张证书:

acme.sh --dns dns_dgon --issue -d example.com -d \*.example.com -d example.org -d \*.example.org --domain-alias @.acme.example.com

如需其他的 DNS ,请修改 dns_dgo 为对应的 API 名称,详见 acme.sh/dnsapi

2 个同根域名在同一张证书,共两张:

acme.sh --dns dns_dgon --issue -d example.com -d \*.example.com --domain-alias @.acme.example.com
acme.sh --dns dns_dgon --issue -d example.org -d \*.example.org --domain-alias @.acme.example.com

不包含根域名,只包含通配符域名的证书,共两张:

acme.sh --dns dns_dgon --issue -d \*.example.com --domain-alias @.acme.example.com
acme.sh --dns dns_dgon --issue -d \*.example.org --domain-alias @.acme.example.com
0
本文系作者 @OIMI 原创发布在 oimi分享美好数字生活。未经许可,禁止转载。
区块链的运作原理、存在问题以及前景
上一篇
Linux 下使用 acme.sh 配置 Let's Encrypt 免费 SSL 证书 + 通配符证书
下一篇

评论 (0)

再想想
暂无评论

聚合文章

理想星环OS开源项目
亚马逊云科技部署DeepSeek模型
重磅发布:Windows/Office被国外大神破解,全部离线永久激活!
OOMOL Studio 免费、底层开源
DeepSeek开源周首日推出FlashMLA项目 可以显著降低内存占用和计算开销
DeepSeek-R1 发布,性能对标 OpenAI o1 正式版
HEU KMS Activator v42.3.2
Windows/Office通用激活神器MAS v2.9版发布
2024年12月,Windows11 24H2官方原版ISO的系统版本号为26100.2605
小米官方发布「米家集成」,可在 Home Assistant 中使用小米 IoT 智能设备

Android 11 Apache Apple M1 Aria2 AWS Route53 Calm CDN ChatGPT Cloudflare CloudXNS CNNIC Debian Debian 9 Debian 9 Stretch DNS DNSpod Domain Name System gdnsd Google Play HEU KMS Activator iOS 11 iOS11 Beta2 iOS11 Beta2 update1 LEMP Let’s Encrypt LNMP macOS MySQL Nginx OEM PanDownload PHP Postgres PowerDNS PowerDNS-Admin Pure DNS Spectre SQLite3 Stretch Windows 11 24H2 Youtube 公共DNS 数字许可证激活 自控力 降级iOS10

猜你喜欢

GitNote - 使用 Git 来管理内容的免费跨平台日记笔记软件

GitNote - 使用 Git 来管理内容的免费跨平台日记笔记软件

3 2 月, 2019
5,558 0 0
Windows 10 2018年四月更新版官方正式版

Windows 10 2018年四月更新版官方正式版

4 5 月, 2018
5,421 0 0
写给新手入门 linux下搭建lnmp环境、SSL证书配置、wordpress博客建立

写给新手入门 linux下搭建lnmp环境、SSL证书配置、wordpress博客建立

6 2 月, 2018
4,367 0 0
物联网设备正面临黑客威胁,我们该怎么办?

物联网设备正面临黑客威胁,我们该怎么办?

12 1 月, 2018
4,686 0 0

关于

OIMI(oimi.me)是分享美好数字生活的内容平台,同时还涉及 macOS、iOS 等知名系统的使用技巧。 科技 / 旅行 / 摄影 / 生活方式

社交媒体

Nicky

导航

Nicky
Copyright © 2016-2025 oimi分享美好数字生活. Designed by OIMI.
  • ChatTTS,HyperOS,HEU KMS Activator,Win10/11数字权利激活

OIMI

258
文章
2
评论
135
喜欢