利用可能なすべてのSSL CA証明書の一覧表示

利用可能なすべてのSSL CA証明書の一覧表示

私の子クライアントの主張

error: Peer's Certificate issuer is not recognized.

これは、グローバルシステムキーリングで対応するSSLサーバーキーが見つからないことを意味します。これを見ながら確認したいです。システム全体で利用可能なすべてのSSLキーのリストGentoo Linuxシステムで。このリストをどのように取得できますか?

答え1

あなたが望むのはSSLキーではなく、認証局、より正確には証明書です。

あなたは試すことができます:

awk -v cmd='openssl x509 -noout -subject' '
    /BEGIN/{close(cmd)};{print | cmd}' < /etc/ssl/certs/ca-certificates.crt

各 CA 証明書の「トピック」を取得します。これは単一の証明書ブロックを読み取った後に終了しますが、次の呼び出しで再開されるために/etc/ssl/certs/ca-certificates.crt機能します。opensslawkopensslprint | cmd

SSLサーバーが中間証明書の提供を忘れた場合、このエラーが発生することがあります。

openssl s_client -showcerts -connect the-git-server:443送信される証明書のリストを取得するために使用されます。

証明書バンドルのパス名は、オペレーティングシステムによって異なる場合があります。サブディレクトリを含むディレクトリはcertsコマンドとして提供されますopenssl version -d。このディレクトリの実際の証明書ファイルは、別の名前を持つこともできます。

答え2

Gentooはわかりませんが、ほとんどのディストリビューションは、証明書ソフトリンクをシステム全体の場所、つまり/etc/ssl/certs

  • 主要書類を入力してください/etc/ssl/private
  • システムが提供する実際のファイルは次の場所にあります。/usr/share/ca-certificates
  • カスタム証明書エントリ/usr/local/share/ca-certificates

上記のいずれかのパスに証明書を配置するたびに実行してリストをupdate-ca-certificates更新します。/etc/ssl/certs

答え3

サーバー上のすべての証明書を一覧表示し、期限切れになった場合はそれを知らせる必要があります。私たちは次のコマンドを出しました。

locate .pem | grep "\.pem$" | xargs -I{} openssl x509 -issuer -enddate -noout -in {}

答え4

もう一つはこんな感じです。

openssl crl2pkcs7 -nocrl -certfile /etc/ssl/certs/ca-certificates.crt | openssl pkcs7 -print_certs -noout | grep subject

関連情報