Saya ingin mengunduh sertifikat ssl dari, katakan https://www.google.com , menggunakan wget atau perintah lain. Adakah baris perintah unix? wget atau openssl?
ssl
ssl-certificate
openssl
wget
RainDoctor
sumber
sumber
-showcerts
menunjukkan sertifikat server / daun juga? Saya pikir itu hanya menampilkan perantara ketika saklar itu dimasukkan.s_client
selalu tunjukkan sertifikat server (jika ada, yaitu server merespons halo dan tidak memilih suite anonim).-showcerts
menunjukkan semua sertifikat yang diterima, server cert pertama kemudian perantara dan / atau root.Saya menemukan jawabannya. Openssl menyediakannya.
sumber
openssl x509 -text <<EOF cert-text EOF
untuk melihat detail sertifikatsudo rm -f cert.pem && sudo echo -n | openssl s_client -connect localhost:443 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > ./cert.pem
milik serverfault.com/questions/139728/…sed
hack.The GnuTLS alat klien,
gnutls-cli
, juga dapat membuat ini mudah:Program ini dirancang untuk menyediakan klien interaktif ke situs, sehingga Anda harus memberikan input kosong (dalam contoh ini, dari
/dev/null
) untuk mengakhiri sesi interaktif.sumber
berdasarkan jawaban @bignose, berikut ini adalah versi lengkap yang cocok untuk misalnya resep koki:
sumber
mode openssl ini mengharapkan stdin, jadi kami menyediakannya melalui
true |
, ini terhubung ke server yang ditentukan dalam parameter -connect.2>/dev/null
kesalahan hening (opsional), kita dapat melewatkan seluruh output ke parser x509, yang menentukan/dev/stdin
untuk menggunakan pipa shell sebagai file input. Dan itu akan menampilkan hanya-----BEGIN CERTIFICATE-----
untuk-----END CERTIFICATE-----
sebagian daris_client
output. Anda bisa mengarahkan itu ke file dengan menambahkan> google.com.pem
ke akhir perintah.Yang terbaik yang saya tahu, ini tidak memverifikasi rantai sertifikat, itu hanya dapat memberi tahu Anda apa ssl identitas yang disediakan server akhir.
sumber
x509
membaca stdin secara default sehingga-in /dev/stdin
redundan (3)s_client
memverifikasi server cert dengan benar rantai ke jangkar kepercayaan lokal (root) dan tidak kedaluwarsa, tetapi Anda belum menekan informasi yang akan menunjukkan ini (4) itu TIDAK memeriksa pembatalan (5) itu memeriksa nama di server cert hanya di 1.0.2 dan kemudian tidak secara default (tetapi Anda dapat dengan mudah memeriksa sendiri dengan melihat sertifikat itu sesudahnya)Sintaks alternatif menggunakan Ex dan proses substitusi:
sumber