Let’s Encryptで証明書の自動更新ができない

Pocket

Let’s EncryptでSSL証明書の自動更新ができていないことに気づいた。

問題があるのは複数のVirtualHostのうち一つだけだ。
その他のVirtualHostのSSL証明書は更新出来ている。

/var/log/letsencrypt/letsencrypt.logのエラーメッセージ:

2016-09-05 20:33:10,421:INFO:certbot.renewal:Auto-renewal forced with --force-renewal...
2016-09-05 20:33:10,442:DEBUG:certbot.plugins.selection:Requested authenticator apache and installer apache
2016-09-05 20:33:10,462:DEBUG:certbot.plugins.disco:No installation (PluginEntryPoint#apache):
Traceback (most recent call last):
  File "/root/.local/share/letsencrypt/local/lib/python2.7/site-packages/certbot/plugins/disco.py", line 105, in prepare
    self._initialized.prepare()
  File "/root/.local/share/letsencrypt/local/lib/python2.7/site-packages/certbot_apache/configurator.py", line 161, in prepare
    raise errors.NoInstallationError
NoInstallationError
2016-09-05 20:33:10,463:DEBUG:certbot.plugins.selection:No candidate plugin
2016-09-05 20:33:10,463:DEBUG:certbot.plugins.selection:No candidate plugin
2016-09-05 20:33:10,464:DEBUG:certbot.plugins.selection:Selected authenticator None and installer None
2016-09-05 20:33:10,464:INFO:certbot.main:Could not choose appropriate plugin: The apache plugin is not working; there may be problems with your existing configuration.
The error was: NoInstallationError()
2016-09-05 20:33:10,464:WARNING:certbot.renewal:Attempting to renew cert from /etc/letsencrypt/renewal/example.com.conf produced an unexpected error: The apache plugin is not working; there may be problems with your existing configuration.
The error was: NoInstallationError(). Skipping.
2016-09-05 20:33:10,465:DEBUG:certbot.renewal:Traceback was:
Traceback (most recent call last):
  File "/root/.local/share/letsencrypt/local/lib/python2.7/site-packages/certbot/renewal.py", line 346, in renew_all_lineages
    main.obtain_cert(lineage_config, plugins, renewal_candidate)
  File "/root/.local/share/letsencrypt/local/lib/python2.7/site-packages/certbot/main.py", line 546, in obtain_cert
    installer, auth = plug_sel.choose_configurator_plugins(config, plugins, "certonly")
  File "/root/.local/share/letsencrypt/local/lib/python2.7/site-packages/certbot/plugins/selection.py", line 196, in choose_configurator_plugins
    diagnose_configurator_problem("authenticator", req_auth, plugins)
  File "/root/.local/share/letsencrypt/local/lib/python2.7/site-packages/certbot/plugins/selection.py", line 273, in diagnose_configurator_problem
    raise errors.PluginSelectionError(msg)
PluginSelectionError: The apache plugin is not working; there may be problems with your existing configuration.
The error was: NoInstallationError()

重量そうなところを抜き出してみる。

2016-09-05 20:33:10,463:DEBUG:certbot.plugins.selection:No candidate plugin
2016-09-05 20:33:10,463:DEBUG:certbot.plugins.selection:No candidate plugin
2016-09-05 20:33:10,464:DEBUG:certbot.plugins.selection:Selected authenticator None and installer None
2016-09-05 20:33:10,464:INFO:certbot.main:Could not choose appropriate plugin: The apache plugin is not working; there may be problems with your existing configuration.
2016-09-05 20:33:10,464:WARNING:certbot.renewal:Attempting to renew cert from /etc/letsencrypt/renewal/example.com.conf produced an unexpected error: The apache plugin is not working; there may be problems with your existing configuration.

「apacheのプラグインが動作していないか設定のミス」とある。
VirtualHostの他のサイトは自動更新できているのでおそらく設定のミスだろうと思ったが、Apacheの.confファイルにミスは見当たらなかった。
ドキュメントルートのディレクトリを確認してみると.well-knownディレクトリが無かった。
何かの拍子に消してしまったようだ。

バックアップ.well-knownディレクトリを戻してみたけれど、更新は成功せず。

更新ではなく新しい証明書を取って見ることにする。


./certbot-auto certonly --webroot -w /path/to/example.com/ -d example.com
2: Renew & replace the cert (limit ~5 per 7days)

を選択する。

結果。

There were too many requests of a given type :: Error creating new cert :: Too many certificates already issued for exact set of domains: example.com
Please see the logfiles in /var/log/letsencrypt for more details.

「証明書更新は1週間に5回まで」の制限にひっかかっているようだ。
1週間後にまた試す。

追記:
時間をあけたら、できた。
https://tech.mktime.com/entry/190

“Let’s Encryptで証明書の自動更新ができない” への1件のコメント

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です