FreeBSD11:証明書検証に失敗しました

FreeBSD11:証明書検証に失敗しました

私のFreeBSD 11は以下を提供します:

[root@freebsd11 ~]# pkg install perl
Updating FreeBSD repository catalogue...
Certificate verification failed for /O=Digital Signature Trust Co./CN=DST Root CA X3
34406394360:error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed:/usr/src/crypto/openssl/ssl/s3_clnt.c:1269:
Certificate verification failed for /O=Digital Signature Trust Co./CN=DST Root CA X3
34406394360:error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed:/usr/src/crypto/openssl/ssl/s3_clnt.c:1269:
Certificate verification failed for /O=Digital Signature Trust Co./CN=DST Root CA X3
34406394360:error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed:/usr/src/crypto/openssl/ssl/s3_clnt.c:1269:
Certificate verification failed for /O=Digital Signature Trust Co./CN=DST Root CA X3
34406394360:error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed:/usr/src/crypto/openssl/ssl/s3_clnt.c:1269:
Certificate verification failed for /O=Digital Signature Trust Co./CN=DST Root CA X3
34406394360:error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed:/usr/src/crypto/openssl/ssl/s3_clnt.c:1269:
Certificate verification failed for /O=Digital Signature Trust Co./CN=DST Root CA X3
34406394360:error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed:/usr/src/crypto/openssl/ssl/s3_clnt.c:1269:
pkg: https://pkg.freebsd.org/FreeBSD:11:amd64/latest/meta.txz: Authentication error
repository FreeBSD has no meta file, using default settings
Certificate verification failed for /O=Digital Signature Trust Co./CN=DST Root CA X3
34406394360:error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed:/usr/src/crypto/openssl/ssl/s3_clnt.c:1269:
Certificate verification failed for /O=Digital Signature Trust Co./CN=DST Root CA X3
34406394360:error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed:/usr/src/crypto/openssl/ssl/s3_clnt.c:1269:
Certificate verification failed for /O=Digital Signature Trust Co./CN=DST Root CA X3
34406394360:error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed:/usr/src/crypto/openssl/ssl/s3_clnt.c:1269:
pkg: https://pkg.freebsd.org/FreeBSD:11:amd64/latest/packagesite.pkg: Authentication error
Certificate verification failed for /O=Digital Signature Trust Co./CN=DST Root CA X3
34406394360:error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed:/usr/src/crypto/openssl/ssl/s3_clnt.c:1269:
Certificate verification failed for /O=Digital Signature Trust Co./CN=DST Root CA X3
34406394360:error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed:/usr/src/crypto/openssl/ssl/s3_clnt.c:1269:
Certificate verification failed for /O=Digital Signature Trust Co./CN=DST Root CA X3
34406394360:error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed:/usr/src/crypto/openssl/ssl/s3_clnt.c:1269:
pkg: https://pkg.freebsd.org/FreeBSD:11:amd64/latest/packagesite.txz: Authentication error
Unable to update repository FreeBSD
Error updating repositories!

証明書が期限切れになったために発生しているようですが、解決策がわかりません。

答え1

私はあなたに答えたGitHubの問題すでにありますが、参照してくださいこれシステムでca-bundleファイルを更新する方法のスクリプト。この特定のスクリプトは、Mozilla CA リポジトリをソースとして使用し、次のファイルを更新します。

/etc/ssl/cert.pem
/usr/local/openssl/cert.pem
/usr/local/etc/ssl/cert.pem
/usr/local/share/certs/ca-root-nss.crt

インストールした項目によっては、ファイルシステムの他の場所に更新する必要がある他のバンドルファイルがある場合があります。

答え2

はい、Let's Encryptで歴史的に使用されていたDSTルートCA X3証明書は、1年半前に期限切れになりました。https://letsencrypt.org/docs/dst-root-ca-x3-expiration-september-2021/そしてリンクに示されているようにhttps://letsencrypt.org/2020/12/21/extending-android-compatibility.html。 (私が覚えているように、Unix、Apple、セキュリティ、SF、SU、SOなど、いくつかのスタックについて約100の質問があります。ほとんどは1〜2週間以内、一部は2週間以内、または3ヶ月以内に表示されます。)への休暇?

openssl versionお持ちのOpenSSL(プログラム:do)とca_root_nss(パッケージ)のバージョンを確認してください。ルートCAが2017年以前のバージョンの場合は、信頼ファイル(パッケージが提供する/usr/local/share/certs/ca-root-nss.crt)にISRGルートがない可能性があるため、追加する必要があります。 - おそらく新しいシステムにダウンロードし、捨てられたシステムにコピーする必要があります。 PEM形式でなければなりませんが、DERを取得したらopenssl x509 -inform der -outform pem <this >that変換に使用し、オプションで-text -fingerprint人間が読むことができる便利な序文を追加します。

1.1.0より前のOpenSSLバージョンがあり、信頼ファイルに現在使用されていないDST-X3ルートがある場合(2020年以前に構築されたシステムではほぼ確実にこれを行う)、それを削除する必要があります(便利メソッドを使用して)エディタ)OpenSSL LEページで言及されているエラーを回避します。

いつものように、重要なファイルを変更する前に、そのファイルのバックアップを保存してください。システムが機能する場合は、これらの変更を含む公式のca_root_nssアップデートがあることを確認し、その場合は手動パッチの代わりにそれを使用してください。

関連情報