
ここ 2 日間、サーバーの SSL 証明書の問題を解決しようとしてきました。
AとBの2つのサーバーがあり、AからBに接続できましたが、BはSSL証明書を変更しました。このキーを共有し、それをインポートしましたが、BIに接続しようとすると、
$ openssl s_client -CApath /etc/ssl/certs/ -connect B:443
verify error:num=10:certificate has expired
notAfter=Sep 17 12:00:00 2021 GMT
つまり、これはまだ古いものです。次に、新しい .crt ファイルをインポートできなかったのか、それともまだ古いものなのかを理解しようとします。
$ openssl x509 -in B.crt -noout -dates
notBefore=Aug 4 00:00:00 2021 GMT
notAfter=Aug 4 23:59:59 2022 GMT
いいえ、ご覧のとおり、証明書は新しく有効です。そのため、それを使用して B への接続をテストしようとしました。
$ openssl s_client -connect B:443 -CAfile B.crt
しかし、それはまだ戻ってくる
verify error:num=10:certificate has expired
notAfter=Sep 17 12:00:00 2021 GMT
私は今どうすればいい?
答え1
$ openssl s_client -CApath /etc/ssl/certs/ -connect B:443 verify error:num=10:certificate has expired notAfter=Sep 17 12:00:00 2021 GMT
そのため、B は期限切れの証明書を送信します。コメントによると、SNI を使用して名前 B の証明書を要求すると、有効な証明書が送信されます。
解決策は明らかに SNI を使用することです。これは B がテストして実装したものです。