質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

89.23%

Let's Encrypt 証明書取得時のエラー

解決済

回答 1

投稿

  • 評価
  • クリップ 0
  • VIEW 5,286

sola

score 10

Let's Encrypt にて証明書を何度か発行しておりましたが、
突然エラーが発生し、証明書の発行が行えなくなりました。

以下のコマンドを実行

sudo ./letsencrypt-auto certonly --standalone -d xxx.com -d www.xxx.com

結果

Updating letsencrypt and virtual environment dependencies......
Requesting root privileges to run with virtualenv: /root/.local/share/letsencrypt/bin/letsencrypt certonly --standalone -d xxx.com -d www.xxx.com
An unexpected error occurred:
TypeError: coercing to Unicode: need string or buffer, NoneType found
Please see the logfiles in /var/log/letsencrypt for more details.

以下 /var/log/letsencrypt/letsencrypt.log

2015-12-29 15:54:33,970:DEBUG:letsencrypt.cli:Root logging level set at 30
2015-12-29 15:54:33,971:INFO:letsencrypt.cli:Saving debug log to /var/log/letsencrypt/letsencrypt.log
2015-12-29 15:54:33,971:DEBUG:letsencrypt.cli:letsencrypt version: 0.1.1
2015-12-29 15:54:33,971:DEBUG:letsencrypt.cli:Arguments: ['--standalone', '-d', 'xxx.com', '-d', 'www.xxx.com']
2015-12-29 15:54:33,972:DEBUG:letsencrypt.cli:Discovered plugins: PluginsRegistry(PluginEntryPoint#apache,PluginEntryPoint#webroot,PluginEntryPoint#null,PluginEntryPoint#manual,PluginEntryPoint#standalone)
2015-12-29 15:54:33,983:DEBUG:letsencrypt.cli:Requested authenticator standalone and installer None
2015-12-29 15:54:34,455:DEBUG:letsencrypt.display.ops:Single candidate plugin: * standalone
Description: Automatically use a temporary webserver
Interfaces: IAuthenticator, IPlugin
Entry point: standalone = letsencrypt.plugins.standalone:Authenticator
Initialized: <letsencrypt.plugins.standalone.Authenticator object at 0x37d08d0>
Prep: True
2015-12-29 15:54:34,455:DEBUG:letsencrypt.cli:Selected authenticator <letsencrypt.plugins.standalone.Authenticator object at 0x37d08d0> and installer None
2015-12-29 15:54:34,489:DEBUG:letsencrypt.cli:Picked account: <Account(b438c2205c083acf68a39547c3134fff)>
2015-12-29 15:54:34,490:DEBUG:root:Sending GET request to https://acme-v01.api.letsencrypt.org/directory. args: (), kwargs: {}
2015-12-29 15:54:34,500:INFO:requests.packages.urllib3.connectionpool:Starting new HTTPS connection (1): acme-v01.api.letsencrypt.org
2015-12-29 15:54:34,823:DEBUG:requests.packages.urllib3.connectionpool:"GET /directory HTTP/1.1" 200 263
2015-12-29 15:54:34,827:DEBUG:root:Received <Response [200]>. Headers: {'Content-Length': '263', 'Expires': 'Tue, 29 Dec 2015 15:54:34 GMT', 'Strict-Transport-Security': 'max-age=604800', 'Server': 'nginx', 'Connection': 'keep-alive', 'Pragma': 'no-cache', 'Cache-Control': 'max-age=0, no-cache, no-store', 'Date': 'Tue, 29 Dec 2015 15:54:34 GMT', 'X-Frame-Options': 'DENY', 'Content-Type': 'application/json', 'Replay-Nonce': 'RGvL6gWoJzpsSJJfKiT6C5Ar8cepzb43y5vMva1IupE'}. Content: '{"new-authz":"https://acme-v01.api.letsencrypt.org/acme/new-authz","new-cert":"https://acme-v01.api.letsencrypt.org/acme/new-cert","new-reg":"https://acme-v01.api.letsencrypt.org/acme/new-reg","revoke-cert":"https://acme-v01.api.letsencrypt.org/acme/revoke-cert"}'
2015-12-29 15:54:34,828:DEBUG:acme.client:Received response <Response [200]> (headers: {'Content-Length': '263', 'Expires': 'Tue, 29 Dec 2015 15:54:34 GMT', 'Strict-Transport-Security': 'max-age=604800', 'Server': 'nginx', 'Connection': 'keep-alive', 'Pragma': 'no-cache', 'Cache-Control': 'max-age=0, no-cache, no-store', 'Date': 'Tue, 29 Dec 2015 15:54:34 GMT', 'X-Frame-Options': 'DENY', 'Content-Type': 'application/json', 'Replay-Nonce': 'RGvL6gWoJzpsSJJfKiT6C5Ar8cepzb43y5vMva1IupE'}): '{"new-authz":"https://acme-v01.api.letsencrypt.org/acme/new-authz","new-cert":"https://acme-v01.api.letsencrypt.org/acme/new-cert","new-reg":"https://acme-v01.api.letsencrypt.org/acme/new-reg","revoke-cert":"https://acme-v01.api.letsencrypt.org/acme/revoke-cert"}'
2015-12-29 15:54:34,836:DEBUG:letsencrypt.storage:Expected symlink /etc/letsencrypt/live/xxx.com/cert.pem for cert does not exist.
2015-12-29 15:54:34,838:DEBUG:letsencrypt.cli:Exiting abnormally:
Traceback (most recent call last):
  File "/root/.local/share/letsencrypt/bin/letsencrypt", line 11, in <module>
    sys.exit(main())
  File "/root/.local/share/letsencrypt/lib/python2.7/site-packages/letsencrypt/cli.py", line 1396, in main
    return args.func(args, config, plugins)
  File "/root/.local/share/letsencrypt/lib/python2.7/site-packages/letsencrypt/cli.py", line 598, in obtain_cert
    _auth_from_domains(le_client, config, domains)
  File "/root/.local/share/letsencrypt/lib/python2.7/site-packages/letsencrypt/cli.py", line 379, in _auth_from_domains
    action, lineage = _treat_as_renewal(config, domains)
  File "/root/.local/share/letsencrypt/lib/python2.7/site-packages/letsencrypt/cli.py", line 235, in _treat_as_renewal
    ident_names_cert, subset_names_cert = _find_duplicative_certs(config, domains)
  File "/root/.local/share/letsencrypt/lib/python2.7/site-packages/letsencrypt/cli.py", line 204, in _find_duplicative_certs
    candidate_names = set(candidate_lineage.names())
  File "/root/.local/share/letsencrypt/lib/python2.7/site-packages/letsencrypt/storage.py", line 459, in names
    with open(target) as f:
TypeError: coercing to Unicode: need string or buffer, NoneType found

上記問題ご存知の方いらっしゃいませんでしょうか?
(実は英語にてそれっぽいソース発見しましたが、英語が分からず苦戦中です…)
Messing with /etc/letsencrypt leads to An unexpected error occurred. TypeError: coercing to Unicode: need string or buffer, NoneType found.

よろしくお願い致します。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 1

check解決した方法

0

どうやら、 /etc/letsencrypt/ ディレクトリを削除し、再度申請しなおせばこの問題が解決するようですが、
私の場合証明書を発行しすぎたせいで、制限に引っかかっているようです。
5証明書/7日との事ですので、7日後リトライしてみます。
ありがとうございました。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 89.23%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる