web-dev-qa-db-fra.com

Définir le certificat d'entreprise comme approuvé

Mon entreprise m'a donné un fichier company_CA.crt que je dois utiliser pour accéder au site Web de l'un de nos clients.

Lorsque j'ai essayé de l'ajouter sur macOS, tout ce que j'avais à faire était de cliquer sur le fichier, puis, après l'importation, définissez-le comme "Toujours faire confiance".

Je voudrais faire la même chose dans Ubuntu, alors j'ai suivi les étapes suivantes:

  • Copié le fichier CRT dans usr/local/share/ca-certificates/my_company
  • Exécuter Sudo update-ca-certificates

Mais je ne peux toujours pas ouvrir le site. Ai-je raté une étape?

4
  • Vérifiez si le certificat racine de l'autorité de certification pour votre site client_web est connu ou non de votre système.

    $ curl -I  https://customer_web_site
    curl: (77) Problem with the SSL CA cert (path? access rights?)
    

Le certificat de l'autorité de certification pour le serveur customer_web_site n'est (en effet) pas connu dans le système.

Le fichier company_CA.crt doit être au format CRT. (cela semble être le cas) S'il est au format PEM, vous devez le convertir (openssl x509 -in xxxx.pem -inform PEM -out xxxx.crt

  • Installez le fichier CA dans Ubuntu

Copiez le fichier company_CA.crt dans le nouveau répertoire extra dans/usr/share/ca-certificates

Laissez Ubuntu récupérer ce nouveau certificat de CA et l'installer sur le système Linux.

Sudo dpkg-reconfigure ca-certificates

Un menu apparaîtra. Cochez l'option "demander" pour Demander pour chaque nouveau certificat d'autorité de certification. Vous verrez votre nouveau certificat.

extra/company_CA.crt

Appuyez sur espace pour sélectionner ce nouveau fichier de certificat d'autorité de certification, puis sélectionnez OK.

uÀ la fin, vous devriez voir quelque chose comme ceci:

1 ajouté, 0 supprimé; terminé. Exécution de hooks dans /etc/ca-certcates/update.d ...

Vérifier si curl fonctionne sans spécifier le fichier de certificat de l'autorité de certification

$ curl -I https://customer_web_site
HTTP/1.1 200 OK
Date: Thu, 06 Sep 2018 18:08:26 GMT
Server: Apache/2.4.18 (Ubuntu)
Last-Modified: Fri, 27 Jul 2018 12:09:02 GMT
ETag: "2c39-571f9fa3671da"
Accept-Ranges: bytes
Content-Length: 11321
Vary: Accept-Encoding
Content-Type: text/html

Ça marche.

Si vous souhaitez en savoir plus sur les certificats auto-signés et sur leur utilisation, consultez mon github .

2
Rob Lassche