web-dev-qa-db-fra.com

Obtenir Chrome d'accepter le certificat auto-signé localhost

J'ai créé un certificat SSL auto-signé pour le CN localhost. Firefox accepte ce certificat après s'être plaint initialement, comme prévu. Chrome et IE refusent toutefois de l'accepter, même après avoir ajouté le certificat au magasin de certificats du système sous Racines de confiance. Même si le certificat est répertorié comme étant correctement installé lorsque je clique sur "Afficher les informations sur le certificat" dans la fenêtre contextuelle HTTPS de Chrome, il est néanmoins précisé que le certificat ne peut pas être approuvé.

Que dois-je faire pour que Chrome accepte le certificat et cesse de se plaindre?

1033
pjohansson

Pour localhost uniquement:

Collez simplement ceci dans votre chrome:

chrome://flags/#allow-insecure-localhost

Le texte en surbrillance indique: Autorisez les certificats non valides pour les ressources chargées à partir de localhost.

Cliquez sur Enable.

589
Chris

Cela a fonctionné pour moi:

  1. À l'aide de Chrome, accédez à une page de votre serveur via HTTPS et continuez après la page d'avertissement rouge (en supposant que cela ne soit pas déjà fait).
  2. Ouvrez Chrome Settings > Show advanced settings > HTTPS/SSL > Manage Certificates.
  3. Cliquez sur l'onglet Authorities et faites défiler pour rechercher votre certificat sous le nom de l'organisation que vous avez attribué au certificat.
  4. Sélectionnez-le, cliquez sur Modifier (NOTE: dans les versions récentes de Chrome, le bouton est désormais "Avancé" au lieu de "Modifier"), cochez toutes les cases et cliquez sur OK. Vous devrez peut-être redémarrer Chrome.

Vous devriez maintenant avoir le joli cadenas vert sur vos pages.

EDIT: J'ai essayé à nouveau sur une nouvelle machine et le certificat n'apparaissait pas dans la fenêtre Gérer les certificats simplement en continuant à partir de la page de certificat rouge non approuvée. Je devais faire ce qui suit:

  1. Sur la page contenant le certificat non approuvé (https:// est barré en rouge), cliquez sur le verrou> Informations sur le certificat. NOTE: sur les versions plus récentes de chrome, vous devez ouvrir Developer Tools > Security et sélectionner View certificate.
  2. Cliquez sur le Details tab > Export. Choisissez PKCS #7, single certificate comme format de fichier.
  3. Suivez ensuite les instructions originales pour accéder à la page Gérer les certificats. Cliquez sur le Authorities tab > Import et choisissez le fichier dans lequel vous avez exporté le certificat, puis assurez-vous de choisir PKCS #7, single certificate en tant que type de fichier .
  4. Si le magasin de certification vous y invite, choisissez Autorités de certification racines de confiance
  5. Cochez toutes les cases et cliquez sur OK. Redémarrez Chrome.
478
kellen

MISE À JOUR POUR CHROME 58+ (LIBÉRÉ LE 2017-04-19)

À partir de Chrome 58, identifie l'hôte à l'aide uniquement de commonNameen cours de suppression . Voir plus loin discussion ici et bug tracker ici . Auparavant, subjectAltName était utilisé uniquement pour les certificats multi-hôtes, de sorte que certains outils d'autorité de certification internes peuvent ne pas les inclure.

Si vos certificats auto-signés ont bien fonctionné dans le passé mais ont soudainement commencé à générer des erreurs dans Chrome 58, voici pourquoi.

Quelle que soit la méthode que vous utilisez pour générer votre certificat auto-signé (ou un certificat signé par une autorité de certification auto-signée), assurez-vous que le certificat du serveur contient un subjectAltName avec le bon DNS et/ou IP entry/entries, même s'il ne s'agit que d'un seul hôte .

Pour openssl, cela signifie votre configuration OpenSSL (/etc/ssl/openssl.cnf sur Ubuntu) devrait avoir quelque chose de similaire au suivant pour un seul hôte:

[v3_ca]   # and/or [v3_req], if you are generating a CSR
subjectAltName = DNS:example.com

ou pour plusieurs hôtes:

[v3_ca]   # and/or [v3_req], if you are generating a CSR
subjectAltName = DNS:example.com, DNS:Host1.example.com, DNS:*.Host2.example.com, IP:10.1.2.3

Dans l'afficheur de certificats de Chrome (qui a été déplacé dans l'onglet "Sécurité" sous F12), vous devriez le voir répertorié sous Extensions comme Certificate Subject Alternative Name:

Chrome cert viewer

137
Toby J

Sur le Mac, vous pouvez utiliser l'utilitaire Keychain Access pour ajouter le certificat auto-signé au trousseau Système. Chrome l'acceptera ensuite. J'ai trouvé les instructions étape par étape ici:

Google Chrome, Mac OS X et certificats SSL auto-signés

Fondamentalement:

  1. double-cliquez sur l'icône de cadenas avec un X et glissez-déposez l'icône de certificat sur le bureau,
  2. ouvrez ce fichier (en terminant par l'extension .cer); Cela ouvre l'application de trousseau qui vous permet d'approuver le certificat.
135
bjnord

Cliquez n'importe où sur la page et tapez un BYPASS_SEQUENCE

"thisisunsafe" est un BYPASS_SEQUENCE pour Chrome version 65

"badidea" Chrome version 62 - 64.

"danger" fonctionnait dans les versions précédentes de Chrome

Vous n'avez pas besoin de rechercher un champ de saisie, il suffit de le taper. C'est étrange mais ça marche.

Je l'ai essayé sur Mac High Sierra.

Pour vérifier s’ils le modifient encore, allez à Latest chrome Code Source

Pour rechercher BYPASS_SEQUENCE, pour le moment ça ressemble à ça:

var BYPASS_SEQUENCE = window.atob('dGhpc2lzdW5zYWZl');

Maintenant, ils l'ont camouflé, mais pour voir le véritable BYPASS_SEQUENCE, vous pouvez exécuter la ligne suivante dans une console de navigateur.

console.log(window.atob('dGhpc2lzdW5zYWZl'));
96
Yevgeniy Afanasyev

UPDATE 11/2017: Cette réponse ne fonctionnera probablement pas pour la plupart des versions plus récentes de Chrome.

MISE À JOUR 02/2016: On peut trouver de meilleures instructions pour les utilisateurs Mac Ici .

  1. Sur le site que vous souhaitez ajouter, cliquez avec le bouton droit sur l'icône de verrou rouge dans la barre d'adresse:enter image description here

    1. Cliquez sur l'onglet Connection , puis cliquez sur Certificate Information

    2. Cliquez sur l'onglet Details , puis sur le bouton Copier dans un fichier ... . Cela ouvrira l'Assistant Exportation de certificat, cliquez sur Suivant pour accéder à l'écran Format du fichier d'exportation .

    3. Choisissez binaire codé DER X.509 (.CER) , cliquez sur Suivant

    4. Cliquez sur Browse ... et enregistrez le fichier sur votre ordinateur. Nommez-le quelque chose de descriptif. Cliquez sur Next , puis cliquez sur Finish .

    5. Ouvrez les paramètres Chrome, faites défiler vers le bas, puis cliquez sur Afficher les paramètres avancés ...

    6. Sous HTTPS/SSL , cliquez sur Gérer les certificats ...

    7. Cliquez sur l'onglet Autorités de certification racines de confiance , puis cliquez sur le bouton Import ... . Cela ouvre l’assistant d’importation de certificat. Cliquez sur Suivant pour accéder à l'écran Fichier à importer .

    8. Cliquez sur Browse ... et sélectionnez le fichier de certificat que vous avez enregistré précédemment, puis cliquez sur Next .

    9. Sélectionnez Placez tous les certificats dans le magasin suivant . Le magasin sélectionné doit être Autorités de certification racines de confiance . Si ce n'est pas le cas, cliquez sur Browse ... et sélectionnez-le. Cliquez sur Suivant et Terminer

    10. Cliquez sur Yes dans l'avertissement de sécurité.

    11. Redémarrez Chrome.

91
kmgdev

Linux

Si vous utilisez Linux, vous pouvez également suivre ces pages officielles du wiki:

Fondamentalement:

  • cliquez sur l'icône de cadenas avec un X,
  • choisissez les informations de certificat
  • aller à l'onglet Détails
  • Cliquez sur Exporter ... (enregistrer en tant que fichier)

Maintenant, la commande suivante va ajouter le certificat (où YOUR_FILE est votre fichier exporté):

certutil -d sql:$HOME/.pki/nssdb -A -t "P,," -n YOUR_FILE -i YOUR_FILE

Pour répertorier tous vos certificats, exécutez la commande suivante:

certutil -d sql:$HOME/.pki/nssdb -L

Si cela ne fonctionne toujours pas, vous pouvez être affecté par ce bogue: Problème 55050: erreur SSL Ubuntu 8179

P.S. Assurez-vous également que vous avez libnss3-tools avant de pouvoir utiliser les commandes ci-dessus.

Si vous n'en avez pas, installez-le s'il vous plaît:

Sudo apt-get install libnss3-tools # on Ubuntu
Sudo yum install nss-tools # on Fedora, Red Hat, etc.

En prime, vous pouvez utiliser les scripts suivants:

$ cat add_cert.sh
certutil -d sql:$HOME/.pki/nssdb -A -t "P,," -n $1 -i $1
$ cat list_cert.sh
certutil -d sql:$HOME/.pki/nssdb -L # add '-h all' to see all built-in certs
$ cat download_cert.sh
echo QUIT | openssl s_client -connect $1:443 | sed -ne '/BEGIN CERT/,/END CERT/p'

Usage:

add_cert.sh [FILE]
list_cert.sh
download_cert.sh [DOMAIN]

Dépannage

  • Exécutez Chrome avec le paramètre --auto-ssl-client-auth

    google-chrome --auto-ssl-client-auth

88
kenorb

Sur le Mac, vous pouvez créer un certificat entièrement approuvé par Chrome et Safari au niveau du système en procédant comme suit:

# create a root authority cert
./create_root_cert_and_key.sh

# create a wildcard cert for mysite.com
./create_certificate_for_domain.sh mysite.com

# or create a cert for www.mysite.com, no wildcards
./create_certificate_for_domain.sh www.mysite.com www.mysite.com

Ce qui précède utilise les scripts suivants et un fichier de support v3.ext, pour éviter les erreurs de nom de sujet alternatif

Si vous souhaitez créer un nouveau certificat auto-signé entièrement approuvé avec votre propre autorité racine, vous pouvez le faire à l'aide de ces scripts.

create_root_cert_and_key.sh

#!/usr/bin/env bash
openssl genrsa -out rootCA.key 2048
openssl req -x509 -new -nodes -key rootCA.key -sha256 -days 1024 -out rootCA.pem

create_certificate_for_domain.sh

#!/usr/bin/env bash

if [ -z "$1" ]
then
  echo "Please supply a subdomain to create a certificate for";
  echo "e.g. www.mysite.com"
  exit;
fi

if [ ! -f rootCA.pem ]; then
  echo 'Please run "create_root_cert_and_key.sh" first, and try again!'
  exit;
fi
if [ ! -f v3.ext ]; then
  echo 'Please download the "v3.ext" file and try again!'
  exit;
fi

# Create a new private key if one doesnt exist, or use the xeisting one if it does
if [ -f device.key ]; then
  KEY_OPT="-key"
else
  KEY_OPT="-keyout"
fi

DOMAIN=$1
COMMON_NAME=${2:-*.$1}
SUBJECT="/C=CA/ST=None/L=NB/O=None/CN=$COMMON_NAME"
NUM_OF_DAYS=999
openssl req -new -newkey rsa:2048 -sha256 -nodes $KEY_OPT device.key -subj "$SUBJECT" -out device.csr
cat v3.ext | sed s/%%DOMAIN%%/"$COMMON_NAME"/g > /tmp/__v3.ext
openssl x509 -req -in device.csr -CA rootCA.pem -CAkey rootCA.key -CAcreateserial -out device.crt -days $NUM_OF_DAYS -sha256 -extfile /tmp/__v3.ext 

# move output files to final filenames
mv device.csr "$DOMAIN.csr"
cp device.crt "$DOMAIN.crt"

# remove temp file
rm -f device.crt;

echo 
echo "###########################################################################"
echo Done! 
echo "###########################################################################"
echo "To use these files on your server, simply copy both $DOMAIN.csr and"
echo "device.key to your webserver, and use like so (if Apache, for example)"
echo 
echo "    SSLCertificateFile    /path_to_your_files/$DOMAIN.crt"
echo "    SSLCertificateKeyFile /path_to_your_files/device.key"

v3.ext

authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:FALSE
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
subjectAltName = @alt_names

[alt_names]
DNS.1 = %%DOMAIN%%

Encore une étape - Comment rendre les certificats auto-signés entièrement fiables dans Chrome/Safari

Pour que les certificats auto-signés soient COMPLÈTEMENT approuvés dans Chrome et Safari, vous devez importer une nouvelle autorité de certification dans votre Mac. Pour ce faire, suivez ces instructions ou les instructions plus détaillées de ce processus général sur le site Web de mitmproxy :

Vous pouvez le faire de deux manières, en ligne de commande, en utilisant cette commande qui vous demandera votre mot de passe:

$ Sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain rootCA.pem

ou en utilisant l'application Keychain Access:

  1. Accès au trousseau ouvert
  2. Choisissez "Système" dans la liste "Porte-clés"
  3. Choisissez "Certificats" dans la liste "Catégorie"
  4. Choisissez "Fichier | Importer les éléments ..."
  5. Naviguez jusqu'au fichier créé ci-dessus, "rootCA.pem", sélectionnez-le et cliquez sur "Ouvrir"
  6. Sélectionnez votre certificat nouvellement importé dans la liste "Certificats".
  7. Cliquez sur le bouton "i" ou faites un clic droit sur votre certificat et choisissez "Obtenir des informations".
  8. Développez l'option "Trust"
  9. Remplacez "Lorsque vous utilisez ce certificat" par "Toujours faire confiance"
  10. Fermez la boîte de dialogue et votre mot de passe vous sera demandé.
  11. Fermez et rouvrez tous les onglets qui utilisent votre domaine cible. Le chargement sera effectué en toute sécurité!

de plus, si vous avez besoin de Java clients pour faire confiance aux certificats, vous pouvez le faire en important vos certificats dans le magasin de clés Java. Notez que cela supprimera le certificat du fichier de clés s'il existe déjà, car il doit le mettre à jour en cas de changement. Bien entendu, cela ne concerne que les certificats importés.

import_certs_in_current_folder_into_Java_keystore.sh

KEYSTORE="$(/usr/libexec/Java_home)/jre/lib/security/cacerts";

function running_as_root()
{
  if [ "$EUID" -ne 0 ]
    then echo "NO"
    exit
  fi

  echo "YES"
}

function import_certs_to_Java_keystore
{
  for crt in *.crt; do 
    echo prepping $crt 
    keytool -delete -storepass changeit -alias alias__${crt} -keystore $KEYSTORE;
    keytool -import -file $crt -storepass changeit -noprompt --alias alias__${crt} -keystore $KEYSTORE
    echo 
  done
}

if [ "$(running_as_root)" == "YES" ]
then
  import_certs_to_Java_keystore
else
  echo "This script needs to be run as root!"
fi
79
Brad Parks

Si vous êtes sur un Mac et que vous ne voyez pas l'onglet d'exportation ni comment obtenir le certificat, cela a fonctionné pour moi:

  1. Cliquez sur le verrou avant le https: //
  2. Allez dans l'onglet "Connexion"
  3. Cliquez sur "Informations sur le certificat"

    Maintenant, vous devriez voir ceci: Different information of course and yours should be marked as trusted yet (otherwise you probably wouldn't be here)

  4. Faites glisser cette petite icône de certificat sur votre bureau (ou n’importe où).

  5. Double-cliquez sur le fichier .cer qui a été téléchargé, cela devrait l'importer dans votre trousseau et ouvrir l'accès Trousseau à votre liste de certificats.

    Dans certains cas, cela suffit et vous pouvez maintenant actualiser la page.

    Autrement:

  6. Double-cliquez sur le certificat nouvellement ajouté.
  7. Sous le menu déroulant de confiance, changez l’option "Lors de l’utilisation de ce certificat" sur "Toujours faire confiance".

Rechargez maintenant la page en question et le problème devrait être résolu! J'espère que cela t'aides.


Éditer de Wolph

Pour rendre cela un peu plus facile, vous pouvez utiliser le script suivant ( source ):

  1. Enregistrez le script suivant sous le nom whitelist_ssl_certificate.ssh:

    #!/usr/bin/env bash -e
    
    SERVERNAME=$(echo "$1" | sed -E -e 's/https?:\/\///' -e 's/\/.*//')
    echo "$SERVERNAME"
    
    if [[ "$SERVERNAME" =~ .*\..* ]]; then
        echo "Adding certificate for $SERVERNAME"
        echo -n | openssl s_client -connect $SERVERNAME:443 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' | tee /tmp/$SERVERNAME.cert
        Sudo security add-trusted-cert -d -r trustRoot -k "/Library/Keychains/System.keychain" /tmp/$SERVERNAME.cert
    else
        echo "Usage: $0 www.site.name"
        echo "http:// and such will be stripped automatically"
    fi
    
  2. Rendre le script exécutable (à partir du shell):

    chmod +x whitelist_ssl_certificate.ssh
    
  3. Exécutez le script pour le domaine que vous voulez (il suffit de copier/coller l’URL complète):

    ./whitelist_ssl_certificate.ssh https://your_website/whatever
    
56
LunaCodeGirl

MIS À JOUR 3 avr. 1818

Recommandé par l'équipe Chromium

https://www.chromium.org/Home/chromium-security/deprecating-powerful-features-on-insecure-origins#TOC-Testing-Powerful-Features

Solution rapide et facile

Il existe une phrase secrète de contournement qui peut être saisie dans la page d'erreur pour que Chrome continue malgré l'erreur de sécurité: thisisunsafe (in versions antérieures de Chrome, tapez badidea , et même avant, danger ) . A FAIRE PAS UTILISEZ CECI SAUF SI VOUS NE COMPRENEZ PAS EXACTEMENT POURQUOI VOUS EN AVEZ BESOIN!

La source:

https://chromium.googlesource.com/chromium/src/+/d8fc089b62cd4f8d907acff6fb3f5ff58f168697%5E%21/

(NOTE que window.atob('dGhpc2lzdW5zYWZl') résout en thisisunsafe)

La dernière version de la source est @ https://chromium.googlesource.com/chromium/src/+/refs/heads/master/components/security_interstitials/core/browser/resources/interstitial_large.js et la fonction window.atob peut être exécutée dans une console JS.

Pour en savoir plus sur pourquoi l'équipe Chrome a modifié la phrase de contournement (la première fois):

https://bugs.chromium.org/p/chromium/issues/detail?id=581189

Si tout échoue

Pour les one-offs rapides si l'option "Procéder quand même" n'est pas disponible, ni si la phrase de contournement fonctionne, ce hack fonctionne bien:

  1. Autorisez les erreurs de certificat de localhost en activant cet indicateur (remarque Chrome nécessite un redémarrage après la modification de la valeur de l'indicateur):

    chrome://flags/#allow-insecure-localhost

    (et réponse de vote https://stackoverflow.com/a/31900210/430128 par @Chris)

  2. Si le site auquel vous souhaitez vous connecter est localhost, vous avez terminé. Sinon, configurez un tunnel TCP pour écouter localement sur le port 8090 et vous connecter à broken-remote-site.com sur le port 443. Assurez-vous que socat est installé et exécutez un programme similaire dans une fenêtre de terminal:

    socat tcp-listen:8090,reuseaddr,fork tcp:broken-remote-site.com:443

  3. Allez à https: // localhost: 809 dans votre navigateur.

42
Raman

Pour un environnement de test

Vous pouvez utiliser --ignore-certificate-errors comme paramètre de ligne de commande lors du lancement de chrome (Utilisation de la version 28.0.1500.52 sur Ubuntu).

Cela le fera ignorer les erreurs et se connecter sans avertissement. Si vous avez déjà une version de chrome en cours d'exécution, vous devez la fermer avant de la relancer à partir de la ligne de commande, sinon une nouvelle fenêtre s'ouvrira, mais les paramètres seront ignorés.

Je configure Intellij pour qu'il lance chrome de cette façon lors du débogage, car les serveurs de test ne disposent jamais de certificats valides.

Je ne recommanderais cependant pas une navigation normale comme celle-ci, car la vérification des certificats est une fonction de sécurité importante, mais cela peut être utile pour certains.

34
Kieran Moore

Comme quelqu'un l'a noté, vous devez redémarrer TOUT Chrome, pas seulement les fenêtres du navigateur. Le moyen le plus rapide de le faire est d'ouvrir un onglet pour ...

chrome://restart

19
DejerNet

WINDOWS JUN/2017 Windows Server 2012

J'ai suivi la réponse de @Brad Parks. Sous Windows, vous devez importer le fichier rootCA.pem dans le magasin d’autorités de certificats de racine approuvée.

J'ai fait les étapes suivantes:

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

Où v3.ext est:

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

Ensuite, dans mon cas, j'ai une application Web auto-hébergée. Je dois donc lier un certificat avec une adresse IP et un port. Le certificat doit se trouver sur MY store avec les informations de clé privée. J'ai donc exporté au format pfx.

openssl pkcs12 -export -out device.pfx -inkey device.key -in device.crt

Avec la console mmc (Fichier/Ajouter ou supprimer des composants logiciels enfichables/Certificats/Ajouter/Compte Computert/Ordinateur local/OK), j’ai importé le fichier pfx dans le magasin personnel.

Plus tard, j'ai utilisé cette commande pour lier un certificat (vous pouvez également utiliser l'outil HttpConfig):

netsh http add sslcert ipport=0.0.0.0:12345 certhash=b02de34cfe609bf14efd5c2b9be72a6cb6d6fe54 appid={BAD76723-BF4D-497F-A8FE-F0E28D3052F4}

certhash = Certificat Thumprint

appid = GUID (votre choix)

J'ai d'abord essayé d'importer le certificat "device.crt" sur les autorités de certificats racines de confiance de différentes manières, mais je reçois toujours la même erreur:

enter image description here

Mais je me suis rendu compte que je devais importer un certificat d’autorité racine et non pas un certificat de domaine. J'ai donc utilisé la console mmc (Fichier/Ajouter ou supprimer des composants logiciels enfichables/Certificats/Ajouter/Compte Computert/Ordinateur local/OK). J'ai importé rootCA.pem dans le magasin Autorités de certificats racines de confiance.

enter image description here

Redémarrez Chrome et et voilà, cela fonctionne.

Avec localhost:

enter image description here

Ou avec adresse IP:

enter image description here

La seule chose que je n'ai pas pu réaliser, c'est que le code est obsolète (carré rouge sur l'image). L'aide est appréciée sur ce point.

Avec makecert, il n'est pas possible d'ajouter des informations SAN. Avec New-SelfSignedCertificate (Powershell), vous pouvez ajouter des informations SAN, cela fonctionne également.

18
UUHHIVS

Êtes-vous sûr que l'adresse du site est identique à celle du certificat? J'ai eu les mêmes problèmes avec Chrome et un certificat auto-signé, mais au final, j'ai trouvé qu'il était extrêmement difficile en ce qui concerne la validation du nom de domaine sur le certificat (comme il se doit).

Chrome n'a pas de magasin de certificats et utilise celui de Windows. Cependant, Chrome ne fournit aucun moyen d'importer des certificats dans le magasin. Vous devez donc les ajouter via IE.

Installation des certificats dans Google Chrome

Installation des certificats dans Internet Explorer

Jetez également un coup d'œil à cela pour différentes approches de création de certificats auto-signés (je suppose que vous utilisez IIS comme vous ne l'avez pas mentionné).

Comment créer un certificat auto-signé dans IIS 7

13
Ira Rainey

Lorsque vous cliquez sur la petite icône représentant un verrou barré à côté de l'URL, vous obtenez une boîte ressemblant à ceci:

enter image description here

Après avoir cliqué sur le lien Informations sur le certificat, vous verrez la boîte de dialogue suivante:

enter image description here

Il vous indique quel magasin de certificats est le bon, c'est le magasin Autorités de certification racines de confiance.

Vous pouvez utiliser l'une des méthodes décrites dans les autres réponses pour ajouter le certificat à ce magasin ou utiliser:

certutil -addstore -user "ROOT" cert.pem
  • ROOT est le nom interne du magasin de certificats mentionné précédemment.
  • cert.pem est le nom de votre certificat auto-signé.
6
Der Hochstapler

Je suis descendu dans le processus d'utilisation de ce que bjnord avait suggéré, à savoir: certificats Google Chrome, Mac OS X et auto-signés

Ce qui est montré dans le blog n'a pas fonctionné.

Cependant, l'un des commentaires sur le blog était d'or:

Sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain site.crt

Vous devrez suivre le blog sur la façon d’obtenir le fichier CERT, après quoi vous pourrez utiliser la commande ci-dessus et cela devrait être bon.

6
James Oravec

Ce message est déjà inondé de réponses, mais j'ai créé un script bash basé sur certaines des autres réponses afin de faciliter la tâche génère un certificat TLS auto-signé valide dans Chrome (testé dans Chrome 65.x). J'espère que c'est utile pour les autres.

script bash auto-signé-tls

Après avoir installé ( et approuvé ) le certificat, n'oubliez pas de redémarrer Chrome (chrome://restart)


Un autre outil à découvrir est le toolkit cfssl de CloudFlare:

cfssl

6
Logan

À partir de Chrome 58+, l'erreur de certificat a commencé à apparaître sur macOS en raison d'un SAN manquant. Voici comment obtenir le verrou vert sur la barre d'adresse à nouveau.

  1. Générez un nouveau certificat avec la commande suivante:

    openssl req \
      -newkey rsa:2048 \
      -x509 \
      -nodes \
      -keyout server.key \
      -new \
      -out server.crt \
      -subj /CN=*.domain.dev \
      -reqexts SAN \
      -extensions SAN \
      -config <(cat /System/Library/OpenSSL/openssl.cnf \
          <(printf '[SAN]\nsubjectAltName=DNS:*.domain.dev')) \
      -sha256 \
      -days 720
    
  2. Importez le server.crt dans votre chaîne de clés, puis double-cliquez dans le certificat, développez la confiance et sélectionnez toujours Confiance

Actualisez la page https://domain.dev dans Google Chrome afin que le verrou vert soit rétabli.

5
Adriano Rosa

J'ai tout essayé et ce qui a bien fonctionné: lors de l'importation, sélectionnez la bonne catégorie, à savoir Autorités de certification racines de confiance :

(désolé c'est allemand, mais suivez juste l'image)

enter image description here

5

L'interface graphique permettant de gérer les certificats SSL sous Chromium sous Linux ne fonctionnait PAS correctement pour moi. Cependant, leurs docs ont donné la bonne réponse. L'astuce consistait à exécuter la commande ci-dessous qui importe le certificat SSL auto-signé. Il suffit de mettre à jour le nom de <certificate-nickname> et certificate-filename.cer, puis de relancer chromium/chrome.

À partir de la documentation:

Sous Linux, Chromium utilise la base de données partagée NSS. Si le gestionnaire intégré ne fonctionne pas pour vous, vous pouvez configurer des certificats avec les outils de ligne de commande NSS.

Obtenir les outils

  • Debian/Ubuntu: Sudo apt-get install libnss3-tools

  • Fedora: su -c "yum install nss-tools"

  • Gentoo: su -c "echo 'dev-libs/nss utils' >> /etc/portage/package.use && emerge dev-libs/nss" (Vous devez lancer toutes les commandes ci-dessous avec le préfixe nss, par exemple, nsscertutil.) Opensuse: Sudo zypper install mozilla-nss-tools

Pour faire confiance à un certificat de serveur auto-signé, nous devrions utiliser

certutil -d sql:$HOME/.pki/nssdb -A -t "P,," -n <certificate-nickname> -i certificate-filename.cer

Lister tous les certificats

certutil -d sql:$HOME/.pki/nssdb -L

Les TRUSTARGS sont trois chaînes de zéro ou plusieurs caractères alphabétiques, séparés par des virgules. Ils définissent comment le certificat doit être approuvé pour SSL, la messagerie et la signature d'objet, et sont expliqués dans les documents de certutil ou la publication de blog de Meena sur les indicateurs de confiance.

Ajouter un certificat personnel et une clé privée pour l'authentification du client SSL Utilisez la commande suivante:

pk12util -d sql:$HOME/.pki/nssdb -i PKCS12_file.p12

importer un certificat personnel et une clé privée stockés dans un fichier PKCS # 12. Les TRUSTARGS du certificat personnel seront réglés sur "u, u, u".

Supprimer un certificat certutil -d sql:$HOME/.pki/nssdb -D -n <certificate nickname>

Extrait de: https://chromium.googlesource.com/chromium/src/+/HEAD/docs/linux_cert_management.md =

5
TetraDev

Pour Fedora et Ubuntu, si vous obtenez l'erreur example.com Not a Certification authority lors de l'ajout du certificat à l'aide de l'interface graphique, ajoutez une nouvelle autorité racine.

Essayez ce qui suit avec un certificat certifié exporté à partir de chrome, n’importe quel format (chaîne64/chaîne, base 7, fichier binaire, etc.). Cela a fonctionné pour moi lorsque TOUTES les méthodes de l'interface graphique ont échoué lamentablement.

certutil -d sql:$HOME/.pki/nssdb -A -t "P,," -n <certificate nickname> \
-i <certificate filename>

Pour voir les modifications, redémarrez Chrome, supprimez-le en arrière-plan si nécessaire. Firefox va toujours se plaindre.

Pour le supprimer ultérieurement, le cas échéant, accédez à Chrome -> Paramètres -> Avancé -> Gérer les certificats -> Serveurs.

Source, avertissement, très très irrégulière et partiellement obsolète: https://chromium.googlesource.com/chromium/src/+/HEAD/docs/linux_cert_management.md

4
Ray Foss

Autoriser correctement le travail local non sécurisé via cette méthode chrome: // flags/# allow-insecure-localhost

Il vous suffit de créer votre nom d’hôte de développement sur xxx.localhost.

4
Soya Bean

2017-06-27 nouvelle méthode:

openssl req \
    -newkey rsa:2048 \
    -x509 \
    -nodes \
    -keyout yoursite.key \
    -new \
    -out yoursite.crt \
    -subj /CN=yoursite.dev \
    -reqexts SAN \
    -extensions SAN \
    -config <(cat /System/Library/OpenSSL/openssl.cnf \
        <(printf '[SAN]\nsubjectAltName=DNS:yoursite.dev')) \
    -sha256 \
    -days 3650

ajoutez ensuite yoursite.crt et yoursite.key à votre config nginx.

à partir de: https://github.com/webpack/webpack-dev-server/issues/854

3
zhi.yang

Cela n'a pas fonctionné pour moi lorsque j'ai essayé d'importer le certificat dans le navigateur ... Dans chrome, ouvrez Outils de développement> Sécurité et sélectionnez Afficher le certificat. Cliquez sur l'onglet Détails et exportez-le.

// LINUX

Sudo apt-get install libnss3-tools 

certutil -d sql:$HOME/.pki/nssdb -A -t "P,," -n [EXPORTED_FILE_PATH] -i [EXPORTED_FILE_PATH]

Exécutez cette commande et si vous voyez le fichier que vous venez d'importer, vous êtes prêt à partir!

 certutil -d sql:$HOME/.pki/nssdb -L

// Les fenêtres

Start => run => certmgr.msc

Sur le côté gauche, sélectionnez Autorités de certification racines de confiance => Personnel. Cliquez sur l'onglet Actions => Toutes les actions/importer puis choisissez le fichier que vous avez déjà exporté depuis le navigateur.

N'oubliez pas de redémarrer chrome !!!

BONNE CHANCE! ;)

3
Fodort

J'ai résolu ce problème pour moi-même sans modifier les paramètres des navigateurs dotés des certifications SSL appropriées. J'utilise un mac donc il a fallu une mise à jour du trousseau pour mes certifications SSL. Je devais ajouter des noms de sujet à la certification ssl pour que chrome l'accepte. À compter d'aujourd'hui, il s'agit du numéro de version de Chrome: 62.0.3202.94.

Mon exemple est facile à utiliser les commandes et les fichiers de configuration:

ajoutez ces fichiers et cet exemple est dans un répertoire racine

ssl.conf

[ req ]
default_bits       = 4096
distinguished_name = req_distinguished_name
req_extensions     = req_ext

[ req_distinguished_name ]
countryName                 = Country Name (2 letter code)
stateOrProvinceName         = State or Province Name (full name)
localityName                = Locality Name (eg, city)
organizationName            = Organization Name (eg, company)
commonName                  = Common Name (e.g. server FQDN or YOUR name)
commonName_max              = 64

[ req_ext ]
subjectAltName = @alt_names

[alt_names]
DNS.1   = localhost

Exécutez la commande pour créer une certification:

openssl req -newkey rsa:4096 -nodes -keyout key.pem -x509 -days 3650 -out certificate.pem -extensions req_ext -config ssl.conf -subj '/CN=localhost/O=Stackflow/C=US/L=Los Angeles/OU=StackflowTech'

Pour les macs uniquement pour ajouter une certification de confiance (obligatoire):

Sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain ./certificate.pem

Pour Windows, vous devrez trouver comment vérifier nos certificats SSL localement de manière indépendante. Je n'utilise pas Windows. Désolé les gars et les filles.

J'utilise un serveur node.js avec express.js avec uniquement ma clé et ma certification, qui ressemblent à ceci:

app.js

const https = require('https');
const Express = require('express');
const fs = require('fs');
const app = new Express();
const server = https.createServer({
    key: fs.readFileSync('./key.pem'),
    cert: fs.readFileSync('./certificate.pem'),
}, app);
server.listen(3000);

Je le ferai peut-être pour d'autres images principales dans le futur, afin de pouvoir mettre à jour cet exemple pour d'autres à l'avenir. Mais c'était ma solution dans Node.js pour ce problème. Effacez le cache du navigateur et exécutez votre application sur https: //.

Voici un exemple d'exécution de https: // localhost sur un serveur Node.js pour les utilisateurs Mac:

https://github.com/laynefaler/Stack-Overflow-running-HTTPS-localhost

Bon codage!

3
Layne Faler

Pour Chrome sur MacOS, si vous avez préparé un certificat:

  • Quittez Chrome (cmd+Q).
  • Démarrez l'application Keychain Access et ouvrez la catégorie "Certificats".
  • Faites glisser votre fichier de certificat dans la fenêtre d’accès au trousseau et tapez le mot de passe du fichier de certificat.
  • Double-cliquez sur votre certificat et dépliez la liste "Confiance".
    • Dans la ligne "Lors de l'utilisation de ce certificat", choisissez "Toujours faire confiance".
    • Fermez ce matériel et tapez votre mot de passe.
  • Lancez Chrome et effacez tous les caches.
  • Vérifiez que tout va bien.
3
Alykoff Gali

Je devais ajuster le lanceur Chrome sur macosx et ajouter le script ci-dessous. Enregistré comme ci-dessous;

/ Applications/Google\Chrome.app/Contents/MacOS/Chrome.command

#!/bin/sh
RealBin="Google Chrome"
AppDir="$(dirname "$0")"
exec "$AppDir/$RealBin" --ignore-certificate-errors "$@"

Lorsque je lance Chrome avec ce script, les certificats auto-signés fonctionnent sans problème. Mais ne naviguez pas sur le Web avec le navigateur lancé avec ce script vous ne serez pas averti des certificats non valides!

3
aug70co
mkdir CA
openssl genrsa -aes256 -out CA/rootCA.key 4096
openssl req -x509 -new -nodes -key CA/rootCA.key -sha256 -days 1024 -out CA/rootCA.crt

openssl req -new -nodes -keyout example.com.key -out domain.csr -days 3650 -subj "/C=US/L=Some/O=Acme, Inc./CN=example.com"
openssl x509 -req -days 3650 -sha256 -in domain.csr -CA CA/rootCA.crt -CAkey CA/rootCA.key -CAcreateserial -out example.com.crt -extensions v3_ca -extfile <(
cat <<-EOF
[ v3_ca ]
subjectAltName = DNS:example.com
EOF
)
3
Alex Ivasyuv

Cela a fonctionné pour moi. Voir: http://www.robpeck.com/2010/10/google-chrome-mac-os-x-and-self-signed-ssl-certificates/#.Vcy8_ZNVhBc

Dans la barre d'adresse, cliquez sur le petit verrou avec le X. Cela fera apparaître un petit écran d'information. Cliquez sur le bouton "Informations sur le certificat".

Cliquez et faites glisser l'image sur votre bureau. Cela ressemble à un petit certificat.

Double-cliquez dessus. Cela fera apparaître l'utilitaire Keychain Access. Entrez votre mot de passe pour le déverrouiller.

Assurez-vous d’ajouter le certificat au trousseau Système, et non au trousseau de connexion. Cliquez sur "Toujours faire confiance", même si cela ne semble rien faire.

Après l'ajouté, double-cliquez dessus. Vous devrez peut-être vous authentifier à nouveau.

Développez la section "Trust".

"Lorsque vous utilisez ce certificat", définissez-le sur "Toujours faire confiance"

3
Vincil Bishop

C’est quelque chose qui ne cesse de se multiplier - en particulier pour Google Chrome sous Mac OS X Yosemite!

Heureusement, un membre de notre équipe de développement m'a envoyé ce lien aujourd'hui et la méthode fonctionne de manière fiable, tout en vous permettant de contrôler les sites pour lesquels vous acceptez des certificats.

https://www.reddit.com/r/sysadmin/comments/3ercx4/chrome_shortcut_past_the_your_connection_is_not/cthporl

jersully posts:

Si vous ne voulez pas vous soucier des certificats internes ...

  1. Tapez chrome://flags/ dans la barre d'adresse.
  2. Faites défiler ou recherchez les décisions Mémoriser pour poursuivre les erreurs SSL pendant une durée spécifiée.
  3. Sélectionnez Remember pour trois mois.
3
John Landells

Pour créer un certificat auto-signé sous Windows auquel Chrome v58 et versions ultérieures fera confiance, lancez Powershell avec des privilèges élevés et tapez:

New-SelfSignedCertificate -CertStoreLocation Cert:\LocalMachine\My -Subject "fruity.local" -DnsName "fruity.local", "*.fruity.local" -FriendlyName "FruityCert" -NotAfter (Get-Date).AddYears(10)
#notes: 
#    -subject "*.fruity.local" = Sets the string subject name to the wildcard *.fruity.local
#    -DnsName "fruity.local", "*.fruity.local"
#         ^ Sets the subject alternative name to fruity.local, *.fruity.local. (Required by Chrome v58 and later)
#    -NotAfter (Get-Date).AddYears(10) = make the certificate last 10 years. Note: only works from Windows Server 2016 / Windows 10 onwards!!

Une fois cette opération effectuée, le certificat sera enregistré dans les certificats de l'ordinateur local sous le magasin Personnel\Certificats .

Vous souhaitez copier ce certificat dans le magasin des autorités de certification racines de confiance\Certificates .

Une façon de faire: cliquez sur le bouton de démarrage de Windows, puis tapez certlm.msc. Ensuite, faites glisser le certificat nouvellement créé dans le magasin Autorités de certification racines de confiance\Certificats conformément à la capture d'écran ci-dessous. enter image description here

2
mpowrie

Que dois-je faire pour que Chrome accepte le certificat et cesse de se plaindre?

Vous devez créer une infrastructure à clé publique avec;

1) Autorité de certification racine auto-signée.
2) certificat de sous-intermédiaire/intermédiaire [signé par l'autorité de certification racine].
3) certificat d'entité normale/d'extrémité [signé par l'autorité de certification racine ou une sous-autorité de certification] (commonName ou subjectAltName (SAN) en tant qu'hôte local) (également inclure https: // localhost / comme l'URI dans SAN).
4) Importer/installer cette autorité de certification racine dans votre système d’exploitation Windows (parce que vous avez mentionné IE. Google Chrome utilise les mêmes ressources tout en recherchant une chaîne de certificats - https: //. www.chromium.org/Home/chromium-security/root-ca-policy ) en tant qu '' autorités de certification racines de confiance '.
5) Installez ce certificat d'entité finale en tant que votre certificat de serveur Web et le message d'erreur cessera de se plaindre.

J'espère que cela t'aides.

J'ai eu du succès après la réponse de kellen avec le vital mise à jour de Toby J , mais je devais faire cette révision:

Lors de la création du certificat auto-signé, il était nécessaire de placer le nouveau champ subjectAltName sous les extensions v3_ca, au lieu de v3_req. J'ai copié /etc/ssl/openssl.conf dans un fichier temporaire, puis j'ai ajouté une ligne subjectAltName = DNS:*.example.com sous [ v3_ca ]. Puis passé ce fichier à la commande de création de cert, quelque chose comme

  openssl req -x509 -nodes -newkey rsa:2048 \
          -config /tmp/openssl-revised.cfg \
          -keyout example.com.key -out example.com.crt

et suivi kellen's étapes mises à jour.

2
msw1520

Correctif pour Chrome sous Windows.

Tout d'abord, vous devez exporter le certificat.

  • Localisez l'URL dans le navigateur. Le segment "https" de l'URL sera barré avec la ligne rouge et un symbole de verrou apparaîtra à gauche.
  • Faites un clic droit sur le segment "https" barré.
  • Vous verrez une fenêtre d'information avec diverses informations
  • Cliquez sur "détails".
  • Exportez le certificat, suivez les instructions pour accepter les paramètres par défaut.

Importer

  • Allez à Chrome Paramètres
  • Cliquez sur "Paramètres avancés"
  • Sous HTTPS/SSL, cliquez sur "Gérer les certificats".
  • Aller à "Autorités de certification racines de confiance"
  • Cliquez sur "Importer"
  • Une fenêtre contextuelle vous demandera si vous souhaitez installer ce certificat. Cliquez sur "oui".
2
user2871617

À des fins de développement sous Windows, vous pouvez
ajouter à Chrome indicateur de raccourci --ignore-certificate-errors

Il s’attendait à ignorer les erreurs de certificat et à vous permettre d’accéder à des sites Web de certificat non valides.
Des instructions plus détaillées dans https://support.opendns.com/entries/66657664 .

enter image description here

2
Binyamin

Je rencontrais le même problème: j'avais installé le certificat dans le magasin d'autorités racines de confiance de Windows et Chrome refusait toujours le certificat, avec l'erreur ERR_CERT_COMMON_NAME_INVALID. Notez que lorsque le certificat n'est pas correctement installé dans le magasin, l'erreur est ERR_CERT_AUTHORITY_INVALID.

Comme l'indique le nom de l'erreur, ce commentaire , et cette question , le problème résidait dans le nom de domaine déclaré dans le certificat. Lorsque le "Nom commun" était demandé lors de la génération du certificat, je devais entrer le nom de domaine que j'utilisais pour accéder au site (localhost dans mon cas). J'ai redémarré Chrome à l'aide de chrome://restart et le nouveau certificat m'a enfin plu.

2
Hugo Wood

Correctif localhost SSL/HTTPS sur mac/osx:

  1. Cliquez sur le verrou rouge avec la croix dans votre barre d'adresse lorsque vous essayez d'ouvrir votre environnement https localhost. Une fenêtre contenant des informations sur le certificat s’ouvrira.

  2. Cliquez sur "Détails" fenêtre d'information

  3. Les outils de développement chrome s'ouvrent dans l'onglet "Sécurité". Cliquez sur Voir le certificat . L'image du certificat
  4. Ajoutez-le à votre trousseau 'Système' (et non à votre trousseau 'Connexion' sélectionné par défaut).

  5. Ouvrez à nouveau votre trousseau et trouvez le certificat. Cliquez dessus et assurez-vous de "faire confiance" à tous.

  6. Redémarrez chrome et cela devrait fonctionner.

2
cscheltinga

Filippo Valsorda a écrit un outil multiplate-forme, mkcert , pour le faire pour lots de magasins de confiance. Je suppose qu'il l'a écrit pour la même raison qu'il y a tant de réponses à cette question: il est difficile de faire ce qu'il faut "de" bien pour les certificats SubjectAltName signés par une autorité de certification racine de confiance.

mkcert est inclus dans les principaux systèmes de gestion de paquets pour Windows, macOS et plusieurs versions de Linux.

mkcert

mkcert est un outil simple permettant de créer des certificats de développement approuvés localement. Il ne nécessite aucune configuration.

$ mkcert -install
Created a new local CA at "/Users/filippo/Library/Application Support/mkcert" ????
The local CA is now installed in the system trust store! ⚡️
The local CA is now installed in the Firefox trust store (requires browser restart)! ????

$ mkcert example.com "*.example.com" example.test localhost 127.0.0.1 ::1
Using the local CA at "/Users/filippo/Library/Application Support/mkcert" ✨

Created a new certificate valid for the following names ????
 - "example.com"
 - "*.example.com"
 - "example.test"
 - "localhost"
 - "127.0.0.1"
 - "::1"

The certificate is at "./example.com+5.pem" and the key at "./example.com+5-key.pem" ✅
1
Michael

Ma solution et explication:

J'avais un certificat auto-signé, créé avec l'outil de kit de ressources IIS SelfSSL.exe . Dans les listes de certificats de mon ordinateur local, j’ai vu que ce certificat auto-signé n’avait qu’un seul but : Authentification du serveur . J'ai donc créé un nouveau certificat auto-signé avec les deux objectifs: Authentification du serveur et Authentification du client . Et maintenant, Chrome ne se plaint plus.

Cet article montre de nombreuses façons de générer des certificats auto-signés. Notez que toutes les options ne vous permettent pas de spécifier l'objectif du certificat. J'ai utilisé la méthode PowerShell:

$cert = New-SelfSignedCertificate -certstorelocation cert:\localmachine\my -dnsname company.co.nz

Remarque: comme indiqué par ceci answer by kellen Chrome vous permet de définir les objectifs des certificats, mais IMO ne peut pas ajouter de nouvel objectif à un certificat si le dernier n'a pas été créé avec un tel à l'esprit.

0
antanta

Aucune des réponses ci-dessus ne m’a aidé sur Windows 10 lors de tests locaux sur

https://localhost:<port>.

Cependant, j'ai trouvé cette page, indiquant un autre drapeau à passer:

https://www.chromium.org/blink/serviceworker/service-worker-faq

Si vous voulez tester sur https: // localhost avec un certificat auto-signé, faites:

$ ./chrome --allow-insecure-localhost https: // localhost

Cela ne m'a pas débarrassé de l'avertissement rouge, mais cela m'a permis d'utiliser la fonctionnalité https uniquement, comme les opérateurs de service et les notifications Web Push.

0
phil_lgr

Voici une solution utilisant uniquement Java 8 keytool.exe à la place de openssl:

@echo off
set PWD=changeit
set DNSNAME=%COMPUTERNAME%

echo create ca key
keytool -genkeypair -alias ca -keystore test.jks -keyalg RSA -validity 3650 -ext bc:critical=ca:true -dname "CN=CA" -storepass:env PWD -keypass:env PWD
echo generate cert request for ca signing
keytool -certreq -keystore test.jks -storepass:env PWD -alias ca -file ca.csr -ext bc:critical=ca:true
echo generate signed cert
keytool -gencert -keystore test.jks -storepass:env PWD -alias ca -infile ca.csr -outfile ca.cer -validity 3650 -ext bc:critical=ca:true
echo CA created. Import ca.cer in windows and firefox' certificate store as "Trusted CA".
pause

echo create server cert key for %DNSNAME%
keytool -genkeypair -alias leaf -keystore test.jks -keyalg RSA -validity 3650 -ext bc=ca:false -ext san=dns:%DNSNAME%,dns:localhost,ip:127.0.0.1 -dname "CN=Leaf" -storepass:env PWD -keypass:env PWD
echo generate cert request
keytool -certreq -keystore test.jks -storepass:env PWD -alias leaf -file leaf.csr -ext bc=ca:false -ext san=dns:%DNSNAME%,dns:localhost,ip:127.0.0.1
echo generate signed cert
keytool -gencert -keystore test.jks -storepass:env PWD -alias ca -infile leaf.csr -outfile leaf.cer -validity 3650 -ext bc=ca:false -ext san=dns:%DNSNAME%,dns:localhost,ip:127.0.0.1

rem see content
rem keytool -printcert -file leaf.cer -storepass:env PWD 

echo install in orig keystore
keytool -importcert -keystore test.jks -storepass:env PWD -file leaf.cer -alias leaf

echo content of test.jks:
keytool -list -v -storepass:env PWD -keystore test.jks
pause

Vous pouvez également utiliser des canaux au lieu de fichiers, mais avec les fichiers, vous pouvez vérifier les résultats intermédiaires en cas de problème. SSL testé avec IE11, Edge, FF54, Chrome60 sous Windows et Chrome60 sous Android.

Veuillez modifier le mot de passe par défaut avant d'utiliser le script.

0
schlm3