【问题标题】:Let's Encrypt manual certificate with preferred-challenge over DNS让我们通过 DNS 的首选挑战加密手动证书
【发布时间】:2017-02-23 04:41:14
【问题描述】:

我正在尝试为我无法直接访问的机器生成一个letsencrypt 证书(除了上传SSL 证书)。我下载了最新的 CLI (certbot) 并发现了一个标志 --preferred-challenge,它似乎允许 DNS 主机验证,而不是标准的 HTTP 验证。

当我运行以下命令时:

./certbot-auto certonly --manual --preferred-challenge dns --domains domain_to_secure.com

我收到以下消息:

自我验证需要安装可选的依赖dnspython

在网上很容易找到dnspython包,但是如何让certbot将其识别为插件包?

【问题讨论】:

    标签: python lets-encrypt certbot


    【解决方案1】:

    certbot-auto 运行并完成所有初始设置时,您会在系统包安装后看到如下几行代码:

    Creating virtual environment...
    Installing Python packages...
    

    这是你的提示。 certbot-auto 是一个礼貌的 Python 公民,并使用 virtualenv。找到它可能很尴尬,但位置看起来相当标准。在 v0.9.3 版本中以 root 身份运行,virtualenv 用于 Arch、Centos7 和 Ubuntu 16.04:/root/.local/share/letsencrypt/。现在我们知道了,我们可以使用 virtualenv 的pip 来安装依赖。

    $ /root/.local/share/letsencrypt/bin/pip install dnspython


    如果您真的想确认,请模仿 certbot 的 code

    $ /root/.local/share/letsencrypt/bin/python
    >>> from acme import util
    >>> import acme.dns_resolver
    >>> util.activate(acme.dns_resolver.DNS_REQUIREMENT)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-10-22
      • 2016-04-12
      • 2019-03-25
      • 1970-01-01
      • 2020-07-20
      • 1970-01-01
      • 1970-01-01
      • 2018-09-27
      相关资源
      最近更新 更多