Daftar semua sertifikat ssl ca yang tersedia

35

Klien git saya mengklaim

error: Peer's Certificate issuer is not recognized.

Itu berarti tidak dapat menemukan kunci server ssl yang sesuai di keyring sistem global. Saya ingin memeriksa ini dengan melihat daftar semua kunci ssl sistem yang tersedia di sistem linux gentoo. Bagaimana saya bisa mendapatkan daftar ini?

Jonas Stein
sumber

Jawaban:

65

Ini bukan kunci SSL yang Anda inginkan, otoritas sertifikat, dan lebih tepatnya sertifikatnya.

Kamu bisa mencoba:

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

Untuk mendapatkan "subjek" dari setiap sertifikat CA di /etc/ssl/certs/ca-certificates.crt

Hati-hati bahwa kadang-kadang, Anda mendapatkan kesalahan itu ketika server SSL lupa untuk memberikan sertifikat perantara.

Gunakan openssl s_client -showcerts -connect the-git-server:443untuk mendapatkan daftar sertifikat yang dikirim.

Stéphane Chazelas
sumber
2
//, Ini tidak berfungsi pada CEntOS 6, tapi saya telah menambahkan jawaban untuk CEntOS 6 di sini: unix.stackexchange.com/a/363309/48498
Nathan Basanese
1
Daftar dari trust listdari paket p11-kit pada dasarnya sama?
Pablo A
15

Tidak yakin tentang Gentoo tetapi kebanyakan distro menempatkan soft-link sertifikatnya di lokasi seluruh sistem di /etc/ssl/certs.

  • File kunci masuk ke /etc/ssl/private
  • File aktual yang disediakan sistem berada di /usr/share/ca-certificates
  • Sertifikat khusus masuk ke /usr/local/share/ca-certificates

Setiap kali Anda meletakkan sertifikat di salah satu jalur yang disebutkan di atas, jalankan update-ca-certificatesuntuk memperbarui /etc/ssl/certsdaftar.

SHW
sumber
1
/etc/ssl/certsadalah folder yang benar di gentoo. Tetapi file-file itu tidak baik dibaca untuk mata manusia.
Jonas Stein
3
Ini update-ca-certificatesdengan tambahan s(tidak dapat mengedit ini sendiri, karena hanya mengedit satu karakter).
Slaven Rezic
@ SlavenRezic - Seseorang memperbaikinya.
Craig S. Anderson
3

Saya memiliki persyaratan untuk mencantumkan semua sertifikat di server kami dan memberi tahu jika sertifikat tersebut akan kedaluwarsa. Kami datang dengan perintah ini:

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