Puncte:1

NET::ERR_CERT_AUTHORITY_INVALID cu CA autosemnată în Windows

drapel ug

Am creat un certificat rădăcină (autosemnat) și am semnat un certificat de server web folosind un sistem dezvoltat de mine în Java (certificatul web este folosit în Apache 2.4.41).

Certificatele funcționează fără probleme în Linux și Mac (testate în diferite browsere Webkit și Firefox). Scorurile certificatului și ale setării serverului A+ folosind testssl.sh.

Certificatul CA este instalat corect, fără niciun avertisment, dar nu este acceptat (afișând în continuare avertismentul triunghi roșu și NET::ERR_CERT_AUTHORITY_INVALID eroare) în Windows (testat cu 2 dispozitive Windows 10, unul care este o instalare nouă). Testat în Chrome, Edge și Firefox.

Am incercat multe lucruri:

  • instalându-le folosind certlm.msc, certutil.exe, prin setări sau făcând dublu clic pe fișiere
  • sfera locală sau utilizator
  • regenerarea certificatului rădăcină cu diferite setări
  • modificarea setărilor Apache
  • repornirea browserelor și a computerelor
  • oprirea software-ului antivirus

Am citit întrebări legate de acest site (niciuna nu pare să o rezolve) și am căutat soluții pe alte site-uri, dar fără succes.

Acesta este un fals Certificat CA generat de același sistem (cu aceleași setări, cu excepția că lungimea cheii aici este 1024 pentru a reduce dimensiunea acestei postări):

Cheie și certificat:

-----BEGIN CHEIE PRIVATĂ-----
MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGBAJg/x+BCM0xGDiaC
qc5h+83wrjZ/HVxaZ7GHK7g/sca4fvF1KQuADqx+iDfehxNpZ5hCjmAsgBgWkIbc
E0Md/C6srSRWS4/EeoAPRgFJK2k5SNC0L1QII0DKc0xS7y9CRqcoPFWUt7ncUeuw
RZGmDMYbNiqcamgjCWfnIPRB7kgVAgMBAAECgYBD4FuaDamVHb59SM+vpVt/ywfA
YBeU7vE/4oWJVUxKzkI6IAO2jtb77EWKsvkBnIKFDVcwZWaOVrEEjuU/jQS6jvRU
Ozwbvo4o9UhkxzEhNuREE7d0cs3RSzWBJ1u5PMYT8G7GXsIP22HgRD2XP86VBfSf
TWAqKcfNWpNFtlA/wQJBAPAPULdIEvfO2e3VDNB/5Li50Et7jd8fzBU9B7U0Axus
keuS3oer+zeA2nXinfd7rwFEyZN3tSUsU/8oQwlOzCkCQQCiW84xVNccCPcucwWu
2nEagbFcYyouh/Ml5fR00uBgA8K27y8NHLgzNuqob1zqW7TgsmgCYaTnPbol0t/I
29onAkEAviQTVaiTxY4klTmL1dWHDz22GyN44sLnvebCJSdWUuQkDAgflCyHZZX8
8ySU5EImAoY+dzx40UHEIjT8q/GqyQJAXZMkB/Kp+BKCxFau09Q6k9hj7KeKzD62
uQUMG7jecPg55U19hMUktP/VxzZICxrH6SlqINU+Qbil7N7Y898ikQJAacFKaTdU
2VmKAT1WaO6DPNmwhJ72a4cTAol9y79CFndjrTtGSENJwseqTgPTr+LtRBq3S+nZ
r5a1qsB0bzNGvg==
-----SCHEARE CHEIE PRIVATA-----

-----ÎNCEPE CERTIFICAT-----
MIIC1zCCAkCgAwIBAgIIX2TQo7pcNcQwDQYJKoZIhvcNAQELBQAwgYsxFzAVBgNV
BAMMDkZha2UgQXV0aG9yaXR5MQswCQYDVQQGEwJVUzELMAkGA1UECAwCQ0ExCzAJ
BgNVBAcMAkxBMRQwEgYDVQQKDAtFeGFtcGxlIExURDENMAsGA1UECwwETm9uZTEk
MCIGCSqGSIb3DQEJARYVd2VibWFzdGVyQGV4YW1wbGUuY29tMB4XDTIxMTExMDIx
MDY1M1oXDTIyMTExMDE1MDAwMFowgYsxFzAVBgNVBAMMDkZha2UgQXV0aG9yaXR5
MQswCQYDVQQGEwJVUzELMAkGA1UECAwCQ0ExCzAJBgNVBAcMAkxBMRQwEgYDVQQK
DAtFeGFtcGxlIExURDENMAsGA1UECwwETm9uZTEkMCIGCSqGSIb3DQEJARYVd2Vi
bWFzdGVyQGV4YW1wbGUuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCY
P8fgQjNMRg4mgqnOYfvN8K42fx1cWmexhyu4P7HGuH7xdSkLgA6sfog33ocTaWeY
Qo5gLIAYFpCG3BNDHfwurK0kVkuPxHqAD0YBSStpOUjQtC9UCCNAynNMUu8vQkan
KDxVlLe53FHrsEWRpgzGGzYqnGpoIwln5yD0Qe5IFQIDAQABo0IwQDAPBgNVHRMB
Af8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQURaB83qfjI0wv+tvJ
myfInKagSgswDQYJKoZIhvcNAQELBQADgYEAYQ2PvvfQSe9WtG6peJ4B52bG1Mzs
U+jE9xc4oWEfvekkpjOkZ4dbk89gBVeAZsSxdffcQfFPyRKE9vubYrd9xuemUAGE
51ZyMqJWMawFRxtXdV1e6a1OTH1qKks61obwtRuRBOweoUW4KrOSgCLB3VhmXKVe
YJiVhpvJCxzi/MI=
-----CERTIFICAT FINAL-----

Rezumatul CA

Versiunea: 3
         Număr de serie: 6873848332899071428
             IssuerDN: CN=Fake Authority,C=US,ST=CA,L=LA,O=Example LTD,OU=None,[email protected]
           Data începerii: joi, 11 noiembrie, 06:06:53 JST 2021
           Data finală: vineri, 11 noiembrie, 00:00:00 JST 2022
            SubjectDN: CN=Fake Authority,C=US,ST=CA,L=LA,O=Example LTD,OU=None,[email protected]
           Cheie publică: Cheie publică RSA [b8:07:ef:1f:8e:91:c0:ab:12:db:38:3f:76:e7:0a:7f:21:9d:fe:49],[56 :66:d1:a4]
        modulus: 983fc7e042334c460e2682a9ce61fbcdf0ae367f1d5c5a67b1872bb83fb1c6b87ef175290b800eac7e8837de8713696798428e602c8018169086dc13431dfc2eacad24564b8fc47a800f4601492b693948d0b42f54082340ca734c52ef2f4246a7283c5594b7b9dc51ebb04591a60cc61b362a9c6a68230967e720f441ee4815
exponent public: 10001

  Algoritm de semnătură: SHA256WITHRSA
            Semnătura: 610d8fbef7d049ef56b46ea9789e01e766c6d4cc
                       ec53e8c4f71738a1611fbde924a633a467875b93
                       cf6005578066c4b175f7dc41f14fc91284f6fb9b
                       62b77dc6e7a6500184e7567232a25631ac05471b
                       57755d5ee9ad4e4c7d6a2a4b3ad686f0b51b9104
                       ec1ea145b82ab3928022c1dd58665ca55e609895
                       869bc90b1ce2fcc2
       Extensii: 
                       critic (adevărat) Constrângeri de bază: isCa (adevărat)
                       critic (adevărat) KeyUsage: 0x6
                       critic(fals) 2.5.29.14 valoare = DER

Certificat de server

-----BEGIN CHEIE PRIVATĂ-----
MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCMzMPwSTHQTaxu
rtfnFFVXLXnDOkolG2iuA4H7KkPrizZ24vloFCU353wsT2YVJ9ykIw+Y58vXqEw8
QjlhOHMRMetWeaEMH562uhakb8S+KArQN7SZh9vw7TF7OwiCIg/sWcle87j9ETSn
NtZ4M0HMQ+s+AOX0jDLDWAW08wXk0hXAOHMvaaqnC3NoI94/joQoElctaCpUhrov
kmmDIrJHufplUtMdJrqkzhrUfzKHkslTBLeTHAHHgNdX45JjYibZlqVY3rLns9NI
DIN199ciAnJpqSlvp65SMLJUMFFp2kWK0/S8gnTo41QjcGMBNYR4KiGAPmZPzjaR
QFw9G8mdAgMBAAECggEAWUQhHaBqMpRsNCgpvdmIWaL9RacZBvmfnmOe7uxW72jt
eOZiFXhgOFdMxJL6N4N0QaPw6ZJcDDgpTTL3SgoN+eLaP5MRZaxOZa8JV+t8osqk
QGpw173o1ZCsBGLi/A44ZjJulwKST++uoC0GQGLO3oBZDpBnOmoAbRTLWXOSUwVe
pFyWB/5VYtBKAaTwd8MmoNuTCL9o1CGutBHsaUCglnHv/Z2Ar7JLJaiDPEu2/kSe
H/5YroI6L1FF8X0TsCpcxOiMOW/eFzW6TDrbo/kggHRnVRGjoM+rPr8E7nKYlNks
whQI2aA2pcazWoBBwzYyscD7jXQJfKNNZQ3pun1aQQKBgQDzBeanFuzZmYcVjfq3
QmWydKIIMyn+FuqiXhP1Hs9sRcsFS+FfG4RfZJXJNpJ+4NaAOgTyvofpmZ0g6M6a
M5heae+Hhl/942xzcUqpiK3pJ0YaRy/aluo33O6tyDXAmvPqLBkJO0EfOneBHaAe
KjVm3vK8xvf+fpE022rm36AU+QKBgQCUUXwDAEvWpwhlrWlzT2b1iONKWsZNV3vd
Uy83zqZXJ2P+biaz9xFaNCiKXo5ziZU1XZVPg8+rYv2R3kxtAjgjNUwxr6vF/ZBs
2gpLy0YhoCjk/xcIIAFldna/a7vTUPDSNn4HWxkjEqgMu+GEzyngjZkm8sY7v3bi
oXgPtuBWxQKBgQDkzVt5WQYpYHhj/MZdn2+r8k9TNQiGJwFFWRmlIBrdr2ATXnuT
VY7tWQAE7xJBzmFlXDqoaGYBsxTSlR1e5NDBoy9XA1aA7IuArNtEfmBuMQG5X+hX
/toJOkKk7uhcrAaVJGt124nWYu98am4DuG2KqsESpql5u6Puhd5B+6z10QKBgCT1
hSyOR1eu+dW0d8GHOMXYnaLqqd2d/jyxvONwOF0hcLZ3JmfUGlvbAXsxgtfhoe/R
aSKOWxJ/MWbG+U50rh5/6oO7HdfRjsrBLq2ictBwQ6CEvG2G5DIvafnbU8udsNUB
RTh6B/KIdJ3vt4vLv8i4IEDnYGSFGo/w4qUv0gltAoGACLthSVxyNdZCX/21WRdq
THzdUqV39gkaNVJdT10UQzhzMZSBchoiSDSNha33XEwJqr3UivAuYeAqTeRI6jdr
7BBjXjQ0d3OhtgwqL2AHHzudzYhvSoUmPgfJ1YWeJvUVzGDowz5z6HEjc637GZU4
+ph1ewJMz75BlRZjT7kfi5o=
-----SCHEARE CHEIE PRIVATA-----

-----ÎNCEPE CERTIFICAT-----
MIIDvTCCAyagAwIBAgIIXETyGvtei7MwDQYJKoZIhvcNAQELBQAwgYsxFzAVBgNV
BAMMDkZha2UgQXV0aG9yaXR5MQswCQYDVQQGEwJVUzELMAkGA1UECAwCQ0ExCzAJ
BgNVBAcMAkxBMRQwEgYDVQQKDAtFeGFtcGxlIExURDENMAsGA1UECwwETm9uZTEk
MCIGCSqGSIb3DQEJARYVd2VibWFzdGVyQGV4YW1wbGUuY29tMB4XDTIxMTExMDIx
MDgzN1oXDTIyMTExMDE1MDAwMFowgYgxGTAXBgNVBAMMEGZha2UuZXhhbXBsZS5j
b20xCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJDQTELMAkGA1UEBwwCTEExFDASBgNV
BAoMC0V4YW1wbGUgTFREMQ0wCwYDVQQLDAROb25lMR8wHQYJKoZIhvcNAQkBFhBm
YWtlQGV4YW1wbGUuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
jMzD8Ekx0E2sbq7X5xRVVy15wzpKJRtorgOB+ypD64s2duL5aBQlN+d8LE9mFSfc
pCMPmOfL16hMPEI5YThzETHrVnmhDB+etroWpG/EvigK0De0mYfb8O0xezsIgiIP
7FnJXvO4/RE0pzbWeDNBzEPrPgDl9Iwyw1gFtPMF5NIVwDhzL2mqpwtzaCPeP46E
KBJXLWgqVIa6L5JPGyKyR7n6ZVLTHSa6pM4a1H8yh5LJUwS3kxwBx4DXV+OSY2Im
2ZalWN6y57PTSAyDdffXIgJyaakpb6euUjCyVDBRadpFitP0vIJ06ONUI3BjATWE
eCohgD5mT842kUBcPRvJnQIDAQABo4GmMIGjMAwGA1UdEwEB/wQCMAAwHwYDVR0j
BBgwFoAUx90O8ddg/Fo/lTlIjapK58YMBCEwDgYDVR0PAQH/BAQDAgOoMEMGA1Ud
EQQ8MDqBEGZha2VAZXhhbXBsZS5jb22CEGZha2UuZXhhbXBsZS5jb22CFHd3dy5m
YWtlLmV4YW1wbGUuY29tMB0GA1UdDgQWBBTH3Q7x12D8Wj+VOUiNqkrnxgwEITAN
BgkqhkiG9w0BAQsFAAOBgQCI3Ri0d6W6ETohRaGKLSqH5SDf//g0C9t2rp2ox8po
BjuAMlPHtRn6bfMC6xIsqznjDYZSni2YEMf6YBLivimbo9rYC18E/I5u5KsqvIa+
ze5VZd5U7O8+4+8Uaf+R/Re4gdf7eJ3j02iP4d8wKevfUfD8Vcuddx9mrWqluCEZ
KQ==
-----CERTIFICAT FINAL-----

Rezumat certificat

Versiunea: 3
         Număr de serie: 6648705147606043571
             IssuerDN: CN=Fake Authority,C=US,ST=CA,L=LA,O=Example LTD,OU=None,[email protected]
           Data începerii: joi, 11 noiembrie, 06:08:37 JST 2021
           Data finală: vineri, 11 noiembrie, 00:00:00 JST 2022
            SubjectDN: CN=fake.example.com,C=US,ST=CA,L=LA,O=Example LTD,OU=None,[email protected]
           Cheie publică: Cheie publică RSA [2e:cd:8e:16:02:6f:b3:27:16:01:21:cb:1a:2b:9b:27:18:71:86:87],[56 :66:d1:a4]
        modulus: 8cccc3f04931d04dac6eaed7e71455572d79c33a4a251b68ae0381fb2a43eb8b3676e2f968142537e77c2c4f661527dca4230f98e7cbd7a84c3c42396138731131eb5679a10c1f9eb6ba16a46fc4be280ad037b49987dbf0ed317b3b0882220fec59c95ef3b8fd1134a736d6783341cc43eb3e00e5f48c32c35805b4f305e4d215c038732f69aaa70b736823de3f8e842812572d682a5486ba2f92698322b247b9fa6552d31d26baa4ce1ad47f328792c95304b7931c01c780d757e392636226d996a558deb2e7b3d3480c8375f7d722027269a9296fa7ae5230b254305169da458ad3f4bc8274e8e354237063013584782a21803e664fce3691405c3d1bc99d
exponent public: 10001

  Algoritm de semnătură: SHA256WITHRSA
            Semnătura: 88dd18b477a5ba113a2145a18a2d2a87e520dfff
                       f8340bdb76ae9da8c7ca68063b803253c7b519fa
                       6df302eb122cab39e30d86529e2d9810c7fa6012
                       e2be299ba3dad80b5f04fc8e6ee4ab2abc86becd
                       ee5565de54ecef3ee3ef1469ff91fd17b881d7fb
                       789de3d3688fe1df3029ebdf51f0fc55cb9d771f
                       66ad6aa5b8211929
       Extensii: 
                       critic (adevărat) BasicConstraints: isCa(false)
                       critic (fals) 2.5.29.35 valoare = Secvență
    Etichetat [0] IMPLICIT 
        DER Octet String[20] 

                       critic (adevărat) KeyUsage: 0xa8
                       critic (fals) 2.5.29.17 valoare = Secvență
    Etichetat [1] IMPLICIT 
        DER Octet String[16] 
    Etichetat [2] IMPLICIT 
        DER Octet String[16] 
    Etichetat [2] IMPLICIT 
        DER Octet String[20] 

                       critic(fals) 2.5.29.14 valoare = DER

Ce este în neregulă cu configurarea mea?

drapel us
Cel puțin Chrome folosește propriul magazin de certificate de încredere în Windows: https://stackoverflow.com/questions/7580508/getting-chrome-to-accept-self-signed-localhost-certificate
lepe avatar
drapel ug
@TeroKilkanen mulțumesc. Am văzut acea postare mai devreme, deși nu am încercat toate soluțiile de acolo. Îi voi arunca o privire din nou.
lepe avatar
drapel ug
@garethTheRed Instrumentul este în faza de testare. În Linux și Mac certificatele funcționează bine. Este posibil ca ceea ce spui să afecteze doar Windows? Nu știu de ce cheia este aceeași. Lasă-mă să verific dacă nu am greșit când am postat aici.
lepe avatar
drapel ug
@garethTheRed captură bună. Da, într-adevăr, sunt aceeași cheie. Lasă-mă să-mi verific codul și să văd de ce se întâmplă asta.
lepe avatar
drapel ug
@garethTheRed a fost o eroare în instrument.Stocau certificatele în magazin folosind `cheia priv rădăcină` în loc de `cheia priv server`. Am reparat, mulțumesc! Cu toate acestea, încă eșuează în Windows. Puteți explica puțin mai multe despre problema cu `autorityCertIssuer`? Cum ar trebui să arate? (Am actualizat întrebarea cu noile chei și certificate).
drapel cn
O mulțime de informații aici. Ceea ce lipsește este mesajul de eroare real afișat: „Integritatea acestui certificat nu poate fi garantată. Este posibil ca certificatul să fie corupt sau să fi fost modificat”. Există multe modalități de a crea cu succes un certificat autosemnat, în mod nativ, fără instrumente terțe. Dacă dezvoltați o altă modalitate personalizată, poate că Stack Overflow ar fi util
lepe avatar
drapel ug
@GregAskew Detaliile de avertizare explică doar faptul că certificatul nu este de încredere, deoarece nu se află în lista de încredere. Nu există mai multe informații în afară de asta. De asemenea, am încercat să folosesc numai comenzi openssl, dar rezultatul a fost același.
lepe avatar
drapel ug
@garethTheRed Am șters depozitele de certificate ale mașinii din certificatele vechi, am repornit browserul și chiar am încercat cu diferite domenii. Despre „cheia de autoritate”, aveți dreptate. In cazul meu sunt diferite. O să mă uit la asta.
lepe avatar
drapel ug
@garethTheRed Da! asta era problema. Am găsit în codul meu că `Cheia de autoritate` folosea `cheia publică` din certificatul serverului în loc de certificatul rădăcină. Puteți rezuma comentariile dvs. într-un răspuns, astfel încât să îl pot accepta? Deci Linux și Mac nu verifică asta... interesant.
Puncte:1
drapel br

Există două probleme cu certificatele postate în întrebare:

  1. Ambele certificate folosesc o cheie partajată. Deoarece un certificat ar trebui să lege o cheie de proprietarul său (Subiect), chiar nu are sens să folosești o cheie pentru două subiecte.
  2. Ca o consecință a celor de mai sus, identificatorul cheii de subiect și identificatorul cheii de autoritate sunt aceleași în ambele certificate.

Rețineți că aveți, de asemenea, un identificator de cheie de autoritate destul de complex în certificatul de entitate finală. Este de obicei să aveți doar hash-ul aici, copiat direct din identificatorul cheii de subiect al certificatului CA emitent. Adică, lăsați afară intrările Directory și Serial. Ceea ce ai poate funcționa, dar de ce să riști?

Puncte:0
drapel pw

Un certificat semnat de propria autoritate de certificare fictivă va genera întotdeauna erori, deoarece sistemul dumneavoastră nu are încredere în CA. Pentru a obține lacătul verde, trebuie să adăugați certificatul autosemnat al autorității dvs. de certificare la magazinul de încredere al autorităților de certificare rădăcină de pe computer.

Chiar dacă aveți încredere în CA-ul dumneavoastră fictiv pe propria mașină, certificatul care a fost semnat de acest CA nu va fi de încredere de către alte mașini de pe internet. Dacă doriți ca certificatul dvs. să fie de încredere de către alte mașini, trebuie să plătiți o autoritate de certificare legitimă pentru ca acestea să vă semneze certificatul pentru dvs.

Dacă CA dumneavoastră este deja instalată corect în CA-uri rădăcină de încredere și lungimea reală a cheii este de 1024, este posibil să fie prea slabă pentru a fi de încredere. Încercați să-l regenerați cu o lungime de cel puțin 2048, deoarece din când în când browserele depreciază cheile de lungime mai scurtă.

lepe avatar
drapel ug
Răspunsul dumneavoastră este o recomandare generală care nu se aplică la întrebarea: 1. „Green Lock” nu a fost niciodată așteptat. 2. Încrederea altor mașini de pe Internet nu a fost niciodată obiectivul aici. 3. Lungimea cheii nu a fost problema (deoarece cheile reale au fost 4K și doar 1K a fost folosit ca exemplu). Recomandarea mea este să citiți cu atenție care este întrebarea și să răspundeți numai dacă se aplică, altfel răspunsul dvs. va fi votat negativ. Vă rugăm să vă corectați răspunsul sau să-l ștergeți.

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.