2017-10-14 18 views
0

J'essaie de créer un certificat auto-signé et je ne parviens pas à le faire. Ce que j'essaye de réaliser est de tester une page Web avec un webworker sur mon mobile et pour cela j'ai besoin de https. Mais pour le moment j'essaye de l'exécuter localement sur mon PC. J'utilise openssl sous Windows (j'utilise la version légère de la version 1.1.0 de here).Certificat auto-signé non valide

J'installe le certificat CA sur ma machine et je sers la page avec les options https du navigateur-sync fournissant le CERT et la clé.

Erreur que j'obtiens est NET :: ERR_CERT_INVALID. Quelle peut être la partie invalide?

Commandes Je suis en cours d'exécution:

openssl genrsa -des3 -out CA.key 2048 
openssl req -x509 -new -nodes -key CA.key -sha256 -days 182 -out CA.pem -config ca.cfg 
openssl x509 -outform der -in CA.pem -out CA.crt 
openssl genrsa -out dev.key 2048 
openssl req -new -key dev.key -out dev.csr -config dev.cfg 
openssl x509 -req -in dev.csr -CA CA.pem -CAkey CA.key -CAcreateserial -out dev.crt -days 1825 -sha256 -extfile dev.ext 
openssl pkcs12 -export -in dev.crt -inkey dev.key -out dev.p12 

ca.cfg:

[ req ] 

default_bits  = 2048 
default_keyfile  = server-key.pem 
distinguished_name = subject 
req_extensions  = req_ext 
x509_extensions  = x509_ext 
string_mask   = utf8only 

[ subject ] 

countryName     = Country Name (2 letter code) 
countryName_default   = PL 

stateOrProvinceName   = State or Province Name (full name) 
stateOrProvinceName_default = PL 

localityName    = Locality Name (eg, city) 
localityName_default  = PL 

organizationName   = Organization Name (eg, company) 
organizationName_default = Example Organization 

commonName     = Common Name (e.g. server FQDN or YOUR name) 
commonName_default   = Example Division 

emailAddress    = Email Address 
emailAddress_default  = [email protected] 

[ x509_ext ] 

subjectKeyIdentifier = hash 
authorityKeyIdentifier = keyid,issuer 

keyUsage    = digitalSignature, keyEncipherment 
subjectAltName   = @alternate_names 

[ req_ext ] 

subjectKeyIdentifier = hash 

keyUsage    = digitalSignature, keyEncipherment 
subjectAltName  = @alternate_names 

[ alternate_names ] 

DNS.1  = 192.168.0.17 

dev.cfg

[ req ] 

default_bits  = 2048 
default_keyfile  = server-key.pem 
distinguished_name = subject 
req_extensions  = req_ext 
x509_extensions  = x509_ext 
string_mask   = utf8only 

[ subject ] 

countryName     = Country Name (2 letter code) 
countryName_default   = PL 

stateOrProvinceName   = State or Province Name (full name) 
stateOrProvinceName_default = PL 

localityName    = Locality Name (eg, city) 
localityName_default  = PL 

organizationName   = Organization Name (eg, company) 
organizationName_default = Example Organization 

commonName     = Common Name (e.g. server FQDN or YOUR name) 
commonName_default   = Example Division 

emailAddress    = Email Address 
emailAddress_default  = [email protected] 

[ x509_ext ] 

subjectKeyIdentifier = hash 
authorityKeyIdentifier = keyid,issuer 

keyUsage    = digitalSignature, keyEncipherment 
subjectAltName   = @alternate_names 

[ req_ext ] 

subjectKeyIdentifier = hash 

keyUsage    = digitalSignature, keyEncipherment 
subjectAltName  = @alternate_names 

[ alternate_names ] 

DNS.1  = 192.168.0.17 

dev.ext:

authorityKeyIdentifier=keyid,issuer 
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment 
subjectAltName = @alt_names 

[alt_names] 
DNS.1 = 192.168.0.17 
+0

Vous obtenez l'erreur sur le bureau ou le mobile? –

+0

'DNS.1 = 192.168.0.17' - une adresse IP n'est pas un nom d'hôte. Utilisez 'IP.1' à la place. Et je ne vous vois pas utiliser un CN utile non plus. En dehors de cela, il n'est pas clair comment vous avez l'intention d'utiliser le certificat, c'est-à-dire quelle est l'URL que vous utilisez pour accéder au serveur? –

+0

J'ai changé pour IP.1, merci pour cela. Malheureusement, je reçois toujours une erreur "invalide". Je reçois cette erreur sur le bureau lors de l'accès à la page via https://192.168.0.17:3000. – Tadeusz

Répondre

0

Il semble que j'ai perdu l'espoir de publier rapidement cette question. J'ai trouvé this solution pour travailler.

Fournir à la fois DNS (localhost) et IP (par exemple 192.168.0.17) fonctionne sur la machine Windows.