Puncte:0

De ce opțiunea openssl -trusted_first se comportă diferit de variabila de mediu X509_V_FLAG_TRUSTED_FIRST?

drapel us

Am un script perl care rulează openssl pentru a verifica local validitatea certificatelor. Nu vreau doar să setez un env var și să plec. Se pare că ceva este amuzant cu instalarea sau configurația mea openssl

Care este sistemul, versiunile...

Validez local certificatele de la Letsencrypt. Acesta este un sistem 20.04/Focal. Openssl este OpenSSL 1.1.1f 31 martie 2020 și așa m-aș aștepta să valideze cu plăcere certificatele, chiar și cu LE „semnarea încrucișată” folosind noul certificat rădăcină ISRG.

Cu toate acestea, odată ce vechiul certificat X3 a expirat, aceste erori au început...

openssl verifica -verbose -purpose sslserver -CAfile /path/redacted/chain.pem /path/redacted/cert.pem
C = SUA, O = Internet Security Research Group, CN = ISRG Root X1. 
eroarea 2 la căutarea 2 profunzime: nu se poate obține certificatul emitentului. 
eroare /path/redacted/cert.pem: verificarea eșuată

Se simțea ciudat. Unele săpături m-au făcut să mă întreb despre -trusted_first opțiunea pentru verifica openssl. Exact asta este openssl ar plângeți dacă este prima opțiune de încredere nu activat. Încercarea de a activa în mod explicit această opțiune, totuși, nu are niciun efect:

openssl verify -trusted_first -verbose -purpose sslserver -CAfile /path/redacted/chain.pem /path/redacted/cert.pem
C = SUA, O = Internet Security Research Group, CN = ISRG Root X1
eroarea 2 la căutarea 2 profunzime: nu se poate obține certificatul emitentului
eroare /path/redacted/cert.pem: verificarea eșuată

OK bine. Opțiunea aceea ar trebui să fie pe implicit din openssl 1.1.1 (acesta este sistemul, vezi mai sus). Așa că includerea mea în mod explicit nu ar trebui să facă nicio diferență.

Dar în cele din urmă am încercat să-l specific ca un env var.Stai, ce? De ce specificarea acestei variabile de mediu remediază comportamentul openssl pentru a avea încredere în primul certificat rădăcină pe care îl găsește în lanț:

setează X509_V_FLAG_TRUSTED_FIRST openssl verify -trusted_first -verbose -purpose sslserver -CAfile /path/redacted/chain.pem /path/redacted/cert.pem

⦠rulează cu valoarea de ieșire zero.

micșorând

Nu înțeleg de ce openssl nu funcționează doar (tm). Acesta este un 20.04 complet actualizat. Cel mai nou certificat rădăcină ISRG este instalat în /etc/ssl/certs/ISRG_Root_X1.pem și update-ca-certificate este fericit:

Se actualizează certificatele în /etc/ssl/certs...
0 adăugate, 0 eliminate; Terminat.
Rularea hook-urilor în /etc/ca-certificates/update.d...
Terminat.
Puncte:3
drapel us

Sunt destul de sigur că nu așa setați o variabilă de mediu înainte de a rula o comandă.

https://www.gnu.org/software/bash/manual/html_node/The-Set-Builtin.html

De exemplu, cred că ai vrea ceva de genul

X509_V_FLAG_TRUSTED_FIRST=1 verificare openssl -trusted_first -verbose -purpose sslserver -CAfile /path/redacted/chain.pem /path/redacted/cert.pem

in schimb.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.