helloworlde / helloworlde.github.io

0 stars 0 forks source link

OpenWrt 使用 Lets Encrypt 证书开启 HTTPS 访问 #2

Open utterances-bot opened 1 month ago

utterances-bot commented 1 month ago

OpenWrt 使用 Lets Encrypt 证书开启 HTTPS 访问

OpenWrt 支持开启 HTTPS 访问,但是自签发的证书无法通过 Chrome 等浏览器的认证;因此需要使用 Let’s Encrypt 申请证书;通过 uHTTPd 应用配置证书,使用 DNS 验证的方式申请证书 配置 HTTPS 访问需要使用到公网 IP 和域名,需要确认已经可以通过公网访问,并且可 …

https://blog.hellowood.dev/posts/openwrt-%E4%BD%BF%E7%94%A8-lets-encrypt-%E8%AF%81%E4%B9%A6%E5%BC%80%E5%90%AF-https-%E8%AE%BF%E9%97%AE/

LinXingzhe commented 1 month ago

您好,十分感谢您的分享,但我遇到了一些问题,不知道怎么解决。 我的系统是Imortalwrt23.05.3,NameSever托管在Cloudflare,我在我的软件库中没有找到acme-dnsapi,但是有个acme-acmesh-dnsapi,描述为:“This package provides DNS API integration for ACME (Letsencrypt) client.”不知道是否和acme-dnsapi是一样的。之后我依葫芦画瓢,DNS API填dns_cf,DNS API凭证填了两个,一个是:CF_Token=****,一个是:CF_Key=####。其中CF_Token获取是从cloudflare官网,我的个人资料-用户API令牌界面-创建令牌-(其他保持默认)区域资源设置为包括;特定区域;mydomain.com-创建成功。另一个CF_Key填写的是Global API Key。然而使用ls -alh /etc/acme/命令,并没有出现域名对应的文件夹或者域名-failed格式的文件夹。

helloworlde commented 1 month ago

您好,十分感谢您的分享,但我遇到了一些问题,不知道怎么解决。 我的系统是Imortalwrt23.05.3,NameSever托管在Cloudflare,我在我的软件库中没有找到acme-dnsapi,但是有个acme-acmesh-dnsapi,描述为:“This package provides DNS API integration for ACME (Letsencrypt) client.”不知道是否和acme-dnsapi是一样的。之后我依葫芦画瓢,DNS API填dns_cf,DNS API凭证填了两个,一个是:CF_Token=****,一个是:CF_Key=####。其中CF_Token获取是从cloudflare官网,我的个人资料-用户API令牌界面-创建令牌-(其他保持默认)区域资源设置为包括;特定区域;mydomain.com-创建成功。另一个CF_Key填写的是Global API Key。然而使用ls -alh /etc/acme/命令,并没有出现域名对应的文件夹或者域名-failed格式的文件夹。

  1. acme-dnsapi 在新版本不可用了,得改成 acme-acmesh acme-acmesh-dnsapi,参考 https://github.com/openwrt/packages/issues/22431#issuecomment-1767242251
  2. Cloudflare 的配置可以是特定 zone 的 API Token,需要配置 CF_Token;也可以用全局的 API Key,需要配置 CF_Key 和 CF_Email,参考 https://github.com/acmesh-official/acme.sh/wiki/dnsapi#b-using-the-global-api-key

建议先直接用 acme.sh 尝试申请证书,如果没问题再使用 OpenWrt 的软件申请,可以看下这个文档:https://github.com/acmesh-official/acme.sh/wiki/%E8%AF%B4%E6%98%8E

LinXingzhe commented 1 month ago

非常感谢回答,我已经使用acme.sh成功获取到了ZeroSSL颁发的证书,成功让Edge和Chrome将域名标记为安全。 下面我借宝地分享一下我的操作步骤。 Openwrt系统调教-https加密以及获取可信CA颁发的证书 - 副本.pdf