2010-01-18 07:43:44 +0000 2010-01-18 07:43:44 +0000
342
342

Come salvare un certificato SSL di un server remoto in locale come file

Ho bisogno di scaricare un certificato SSL di un server remoto (non HTTPS, ma la stretta di mano SSL dovrebbe essere la stessa di Google Chrome / IE / wget and curl tutti danno errori di controllo del certificato fail) e aggiungere il certificato come fidato nel negozio di certificati dei miei portatili Windows’ certificate store poiché non sono in grado di ottenere i miei ragazzi IT per darmi il CA cert.

Questo è per le comunicazioni d'ufficio, quindi non posso usare il client effettivo per ottenere il certificato.

Come faccio, ho Windows 7 e un mucchio di Linux a portata di mano, quindi qualsiasi strumento / linguaggio di scripting va bene.

Risposte (8)

333
333
333
2010-08-17 07:20:51 +0000

Se si ha accesso ad OpenSSL, provare

openssl s_client -connect {HOSTNAME}:{PORT} -showcerts

sostituendo {HOSTNAME} e {PORT} con qualsiasi valore.

264
264
264
2013-09-05 13:47:29 +0000

Un metodo veloce per ottenere il certificato tirato e scaricato sarebbe quello di eseguire il seguente comando che convoglia l'output dal comando -showcerts al comando x509 ssl che spoglia tutto ciò che è estraneo. Per esempio:

openssl s_client -showcerts -connect server.edu:443 </dev/null 2>/dev/null|openssl x509 -outform PEM >mycertfile.pem
``` ```
wget https:/server.edu:443/somepage --ca-certificate=mycertfile.pem

Per usare il certificato, con wget,

&001

128
128
128
2010-01-18 07:56:49 +0000

Ad essere onesti, non l'ho mai provato prima (non ne ho mai avuto bisogno), tuttavia, ho appena provato in Firefox e sembra funzionare per il risparmio:

  1. 1. Cliccare sull'icona del certificato SSL in alto / Lucchetto in basso.
  2. Cliccare sull'icona del certificato SSL in alto / Lucchetto in basso. 2. Fare clic su View Certificate
  3. 3. Cliccare sulla scheda Details
  4. 4. Scegliere il certificato desiderato dalla gerarchia [non cerchiato nell'immagine]
  5. Cliccare su Export

52
52
52
2016-12-26 18:45:38 +0000

Esportare un certificato utilizzando il browser Chrome

  1. 2. Collegarsi al sito web utilizzando SSL https://whatever )

2. Cliccare sul simbolo del lucchetto e poi cliccare su Dettagli

    1. A partire dalla versione 56 di Chrome, si procede come segue: andare al menu a tre punti - > Altri strumenti - > Strumenti per sviluppatori, quindi fare clic sulla scheda Sicurezza. Questo vi darà una Riepilogo della sicurezza con un pulsante Visualizza certificato.
    1. Fare clic sul pulsante Visualizza certificato.
  1. Fare clic sul pulsante Visualizza certificato. Per esportare un certificato:

20
20
20
2012-10-18 22:10:10 +0000

Questa è la risposta gbroiles’ risposta , ma volevo sottolineare che il progetto cURL ha una pagina con qualche dettaglio in più sull'uso di openssl per salvare il certificato SSL del server remoto:

  • openssl s\_client -connect {HOSTNAME}:{PORT} | tee logfile
  • Digitare QUIT e premere il tasto Invio / Ritorno.
  • Il certificato sarà elencato tra i marcatori “BEGIN CERTIFICATE” e “END CERTIFICATE”.
  • Se si desidera visualizzare i dati del certificato, è possibile utilizzarli:
16
16
16
2018-01-25 15:59:26 +0000

automatizzato

-nome del server mi è stato richiesto per ottenere il giusto cert dall'host virtuale sul nostro server.

openssl s_client -showcerts -connect host.name.com:443 -servername host.name.com </dev/null | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > host.name.com.pem

si può anche convertire in un certificato per desktop

openssl x509 -inform PEM -in host.name.com.pem -outform DER -out host.name.com.cer

L'ultima parte è di aggiungerlo ai vostri cert, non sicuro su windows per mac portachiavi che ho usato, dovrebbe essere simile…

sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain host.name.com.cer

2
2
2
2017-05-23 01:20:39 +0000

Questo darà i risultati contenenti solo i certificati

echo QUIT | \
openssl s_client -showcerts -connect hostname:port | \
awk '/-----BEGIN CERTIFICATE-----/ {p=1}; p; /-----END CERTIFICATE-----/ {p=0}' "
0
0
0
2019-05-03 13:19:15 +0000

Trovato un modo molto più semplice se su Windows. Ho provato Microsoft Edge (pre-cromo) e ho cliccato sul blocco nella barra degli indirizzi -> Visualizza certificato La finestra di dialogo del certificato si apre con un pulsante “Esporta su file”, che lo salva come file .crt.

Non molto per cui userei Edge, ma è stato un gioco da ragazzi.