User Tools

Site Tools


doc:appunti:linux:sa:ssl_cert

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
doc:appunti:linux:sa:ssl_cert [2019/11/08 10:01] – [File p7m] niccolodoc:appunti:linux:sa:ssl_cert [2020/10/07 10:21] (current) – [Verificare un certificato SSL su HTTPS] niccolo
Line 66: Line 66:
 </code> </code>
  
-===== File p7m =====+===== Verificare un certificato SSL su HTTPS =====
  
-La Pubblica Amministrazione italiana distribuisce i documenti firmati digitalmente sotto forma di file con estensione **.p7m**. Ecco come estrarne il contenuto se si tratta di un formato **''PEM''** (altri enti usano il formato **''DER''**):+Con il tool **openssl** è possibile verificare la possibilità di stabilire una connessione SSL con un server via HTTPS:
  
 <code> <code>
-openssl smime -decrypt -verify -inform PEM -in doc_2018966.pdf.p7m -noverify -out doc_2018966.pdf+openssl s_client -connect www.domain.tld:443
 </code> </code>
  
-Il documento originale al suo interno si presenta in questo modo:+Se la verifica funziona correttamente, l'ultima riga dell'output dovrebbe essere:
  
-<file+<code
------BEGIN PKCS7----- +Verify return code: 0 (ok) 
-MIMDRc4GCSqGSIb3DQEHAqCDA0W+MIMDRbkCAQExDzANBglghkgBZQMEAgEFADCDAz8iBgkq +</code>
-... +
-zqFeaEs7Wsxim1xXyGnGOt2yxzAWuEYba0ggHa7prfr4vsthafc1KRic/8L9/6Czzg== +
------END PKCS7----- +
-</file>+
  
-Se si desidera estrarre il certificato:+La mancata installazione in locale del certificato della CA invece produce questo errore:
  
 <code> <code>
-openssl pkcs7 -in doc_2018966.pdf.p7m -print_certs -out certificate.pem -text+Verify return code: 20 (unable to get local issuer certificate)
 </code> </code>
  
-===== File p7s ===== +È possibile specificare manualmente il percorso del certificato con l'opzione **%%-CAfile%%**:
- +
-Nei messaggi di posta elettronica certificata PEC c'è generalmente un file **smime.p7s**, esso contiene la //signature//, cioè la catena dei certificati che garantiscono l'identità di chi ha firmato la mail. Per vederne il contenuto in formato testuale si può usare il comando:+
  
 <code> <code>
-openssl pkcs7 -in smime.p7s -text -inform DER -print_certs -noout+openssl s_client -connect www.domain.tld:443 -CAfile /usr/lib/ssl/certs/DigiCert_Global_Root_CA.pem
 </code> </code>
 +
 +Ovviamente è consigliabile copiare il certificato nella posizione in cui la libreria lo trova automaticamente, anche solo con un link simbolico. Per una compilazione locale di libssl dovrebbe essere **/usr/local/ssl/cert.pem**, per una installazione di sistema invece dovrebbe essere **/usr/lib/ssl/cert.pem**.
 +
doc/appunti/linux/sa/ssl_cert.1573203710.txt.gz · Last modified: 2019/11/08 10:01 by niccolo