代码之家  ›  专栏  ›  技术社区  ›  Mathieu K.

certbot续订/certonly破折号错误:“ascii”编解码器无法解码字节

  •  8
  • Mathieu K.  · 技术社区  · 7 年前

    我在lets encrypt certbot上遇到了一个奇怪的错误,它似乎与我的第二个域名中存在破折号有关(在真实域名上,位置8对应于所述破折号的位置)。

    无论我是尝试续订还是创建新证书,都会发生此错误。原始(Functional)证书是使用certbot no pb生成的。。。

    ./certbot-auto certonly --nginx -d domain1 -d domain2
    Saving debug log to /var/log/letsencrypt/letsencrypt.log
    Plugins selected: Authenticator nginx, Installer nginx
    Cert is due for renewal, auto-renewing...
    Renewing an existing certificate
    Performing the following challenges:
    tls-sni-01 challenge for domain1
    tls-sni-01 challenge for domain-2
    Cleaning up challenges
    An unexpected error occurred:
    UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 8: ordinal not in range(128)
    

    从这里我能做什么?

    3 回复  |  直到 5 年前
        1
  •  8
  •   Mathieu K.    7 年前

    I indeed在该文件中有一个非ascii字符,解决此类问题的有用命令是:

    grep -nRP '[\x80-\xFF]' /etc/nginx
    

    哪里 /etc/nginx 要查找非ascii字符的目录/文件。在哪里 [\x80-\xFF] 是要查找的范围(在本例中为非ascii)。

        2
  •  1
  •   John Greene    6 年前

    grep -r -P '[^\x00-\x7f]' /etc/apache2 /etc/letsencrypt /etc/nginx
    

    在中找到我的

    /etc/letsencrypt/options-ssl-nginx.conf:        # The following CSP directives don't use default-src as 
    

    使用 shed ,我找到了令人反感的序列。这原来是编辑的错误。 00008099: C2 194 302 11000010 00008100: A0 160 240 10100000 00008101: d 64 100 144 01100100 00008102: e 65 101 145 01100101 00008103: f 66 102 146 01100110 00008104: a 61 097 141 01100001 00008105: u 75 117 165 01110101 00008106: l 6C 108 154 01101100 00008107: t 74 116 164 01110100 00008108: - 2D 045 055 00101101 00008109: s 73 115 163 01110011 00008110: r 72 114 162 01110010 00008111: c 63 099 143 01100011 00008112: C2 194 302 11000010 00008113: A0 160 240 10100000

    使用编辑器(即。 vim ),我编辑掉了有问题的字节序列。

        3
  •  1
  •   Josip Rodin    6 年前

    应该注意的是,这也可能是使用非ASCII语言环境编辑web服务器配置文件的结果,但certbot cron作业无法做到这一点,从而导致自动续订尝试失败。

    同样,任何 include web服务器配置文件中的'd'由certbot解析,因此可能需要在典型目录之外进行检查。

    推荐文章