Apache LetsEncrypt 証明書を更新できません

Apache LetsEncrypt 証明書を更新できません

さて、Let's Encrypt サーバー証明書を更新するのを忘れたので、Apache を起動できません。代わりに CentOS が提供しているのがこれです:

service httpd status
Redirecting to /bin/systemctl status httpd.service
● httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
   Active: failed (Result: exit-code) since Sat 2019-03-23 18:55:50 PDT; 6s ago
     Docs: man:httpd(8)
           man:apachectl(8)
  Process: 3216 ExecStop=/bin/kill -WINCH ${MAINPID} (code=exited, status=1/FAILURE)
  Process: 32430 ExecReload=/usr/sbin/httpd $OPTIONS -k graceful (code=exited, status=0/SUCCESS)
  Process: 3213 ExecStart=/usr/sbin/httpd $OPTIONS -DFOREGROUND (code=exited, status=1/FAILURE)
 Main PID: 3213 (code=exited, status=1/FAILURE)

Mar 23 18:55:50 localhost.localdomain systemd[1]: Starting The Apache HTTP Server...
Mar 23 18:55:50 localhost.localdomain httpd[3213]: AH00558: httpd: Could not reliably determine the server's fully qualified domain name...message
Mar 23 18:55:50 localhost.localdomain systemd[1]: httpd.service: main process exited, code=exited, status=1/FAILURE
Mar 23 18:55:50 localhost.localdomain kill[3216]: kill: cannot find process ""
Mar 23 18:55:50 localhost.localdomain systemd[1]: httpd.service: control process exited, code=exited status=1
Mar 23 18:55:50 localhost.localdomain systemd[1]: Failed to start The Apache HTTP Server.
Mar 23 18:55:50 localhost.localdomain systemd[1]: Unit httpd.service entered failed state.
Mar 23 18:55:50 localhost.localdomain systemd[1]: httpd.service failed.
Hint: Some lines were ellipsized, use -l to show in full.

一体何が問題なのか、まったくわかりません。起動できません... そのため、証明書の更新もできません。私はハッカーだったのでしょうか? 助けを求めるときに、簡潔で愚かなことを言うべきではないようです。以下は、Apache ログの関連コンテンツと最近のコンテンツです /var/log/httpd/error_log

[Sat Mar 23 16:27:43.414544 2019] [core:error] [pid 1330] AH00546: no record of generation 19 of exiting child 19951
[Sat Mar 23 16:27:43.533511 2019] [:error] [pid 19955] SSL Library Error: -8181 Certificate has expired
[Sat Mar 23 16:27:43.533542 2019] [:error] [pid 19955] Unable to verify certificate 'Server-Cert'. Add "NSSEnforceValidCerts off" to nss.conf so the server can start until the problem can be resolved.

/var/log/httpd/ssl_error_log:

[Sat Mar 23 16:40:20.015874 2019] [ssl:warn] [pid 21695] AH01909: RSA certificate configured for localhost.localdomain:443 does NOT include an ID which matches the server name
[Sat Mar 23 16:40:54.682141 2019] [ssl:warn] [pid 21735] AH01909: RSA certificate configured for localhost.localdomain:443 does NOT include an ID which matches the server name

私が望んでいるのは、サーバーをすぐに復旧して稼働させることだけなのに、突然、Logans Run に参加していて、私以外の全員が勝っていると思うのです..............

2019年であり、選択肢があることはわかっていますが、私のディストリビューションにはApacheが含まれていたので、今でもApacheを使用しています。そして、ご覧のとおり、これまでずっとこのように動作していました。

私は怠け者だと認めます。忙しいときもあれば、クライアントの要求が多すぎて疲れてしまい、ミーティングや無料ワークショップに行くのを忘れたり、犬を洗うことさえ忘れてしまうときもあります。

答え1

私は今年すでにこの問題に対処しましたが、奇妙なことに、これは SSL サーバー証明書やハッカーであることとはまったく関係ありません。送信したログを読むと、Apache からの対処方法に関する提案が見つかります。次の行を追加すると:

NSSEnforceValidCerts off

/etc/httpd/conf.d/nss.conf に次の行を追加すると、サーバーを再び起動できるようになります。心配しないでください。Cypher Gang がサーバーの機能を停止させるスプライトをアップロードしたわけではありません。何が問題なのかについてのすばらしい答えがここにあります: https://serverfault.com/posts/578073/revisions

いずれにしても NSS は使用しない可能性が高いため、アンインストールするのが最善です。NSS 証明書が壊れ、SSL 証明書も壊れるというタイミングが悪かっただけです。NSS 証明書は SSL 証明書とは無関係です。

関連情報