WINDOWS JUN / 2017 Windows Server 2012
Ho seguito la risposta di @Brad Parks. Su Windows è necessario importare rootCA.pem nell'archivio delle autorità di certificazione radice attendibili.
Ho fatto i seguenti passi:
openssl genrsa -out rootCA.key 4096
openssl req -x509 -new -nodes -key rootCA.key -newkey rsa:4096 -sha256 -days 1024 -out rootCA.pem
openssl req -new -newkey rsa:4096 -sha256 -nodes -keyout device.key -out device.csr
openssl x509 -req -in device.csr -CA rootCA.pem -CAkey rootCA.key -CAcreateserial -out device.crt -days 2000 -sha256 -extfile v3.ext
Dove v3.ext è:
authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:FALSE
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
subjectAltName = @alt_names
[alt_names]
DNS.1 = localhost
IP.1 = 192.168.0.2
IP.2 = 127.0.0.1
Quindi, nel mio caso, ho un'app Web ospitata autonomamente, quindi devo associare il certificato con indirizzo IP e porta, il certificato dovrebbe essere nel MIO negozio con le informazioni sulla chiave privata, quindi ho esportato in formato pfx.
openssl pkcs12 -export -out device.pfx -inkey device.key -in device.crt
Con la console mmc (File / Aggiungi o rimuovi snap-in / Certificati / Aggiungi / Account computert / LocalComputer / OK) Ho importato il file pfx nell'archivio personale.
Successivamente ho usato questo comando per associare il certificato (è possibile utilizzare anche lo strumento HttpConfig):
netsh http add sslcert ipport=0.0.0.0:12345 certhash=b02de34cfe609bf14efd5c2b9be72a6cb6d6fe54 appid={BAD76723-BF4D-497F-A8FE-F0E28D3052F4}
certhash = Certificato Thumprint
appid = GUID (a scelta)
Innanzitutto ho provato a importare il certificato "device.crt" su Autorità di certificazione radice attendibili in diversi modi ma sto ancora ottenendo lo stesso errore:
Ma mi sono reso conto che avrei dovuto importare il certificato dell'autorità di root e non il certificato per il dominio. Quindi ho usato la console mmc (File / Aggiungi o Rimuovi snap-in / Certificati / Aggiungi / Account computert / LocalComputer / OK) Ho importato rootCA.pem nell'archivio delle autorità di certificazione radice affidabili.
Riavvia Chrome e voilà funziona.
Con localhost:
O con indirizzo IP:
L'unica cosa che non sono riuscito a ottenere è che ha un codice obsoleto (quadrato rosso nell'immagine). L'aiuto è apprezzato su questo punto.
Con makecert non è possibile aggiungere informazioni SAN. Con New-SelfSignedCertificate (Powershell) è possibile aggiungere informazioni SAN, funziona anche.