internes, lors des tests ou des développements.
<code bash>
openssl req -x509 --newkey rsa:2048 -nodes -keyout server.key -out server.crt -days 365
</code>
Le fichier certificat généré est bien un fichier texte, on peut afficher son contenu:
<code bash>
cat server.crt
</code>
La sortie produite n'est cependant pas directement lisible, pour obtenir
que la résolution de nom fonctionne via **dig**:
<code bash>
dig whoami.mairie.local
</code>
Créer le conteneur Docker exécutant le serveur web minimal répondant à l'alias whoami.mairie.local
<code bash>
# Instanciation d'un serveur web minimalist... 80:80 traefik/whoami --name whoami.mairie.local
</code>
Lancer le navigateur et consulter l'URL http://
manipulations faites avec un certificat de test
<code bash>
# Affiche la valeur du champ SAN (Subject A... st, DNS:*.service.localhost, DNS:any, DNS:*.any
</code>
Comme on peut le voir ci-dessus, le champ SAN c... erveur qui a cette même IP tout se passe bien:
<code bash>
curl -v --cacert ca-chain.cert.pem https://... me: host "127.0.0.1" matched cert's IP address!
</code>
Le champ SAN contient deux noms localhost et an
l'établissement d'une connexion avec le serveur
<code bash>
# Avec cURL, pas de message d'avertissement... nf.crt --verbose "https://traefik.mairie.local"
</code>
Pourtant lorsqu'on tente d’accéder au site dep... *, en affichant les détails on voit apparaitre le code erreur:
<file>
Code d’erreur : SSL_ERROR_BAD_CERT_DOMAIN
</file>
Si on affiche le certificat émis, on
Name = Country Name (2 letter code)
countryName_default = FR
countryName... == Création de la CSR =====
Pour créer la CSR:
<code bash>
openssl req -new -config CSR.cnf -key private/local.key -sha256 -out csr/local.csr
</code>
Un mot sur les options utilisées:
* L'option ... le champ ''Country Name'' n'est pas identique:
<code bash>
openssl ca -config openssl.cnf -extensions
certification est valide pour un serveur donné:
<code bash>
curl --verbose https://fqdn
</code>
Si la connexion est valide et vérifiée par une autorité de c... même vérification peut être faite avec openssl:
<code bash>
openssl s_client -connect fqdn:443
</code>
En cas d’échec un message du type ci-dessous est affi
tiliser **openssl** avec les options suivantes:
<code bash>
openssl x509 -noout -text -in certificat.crt
</code>
===== Distant =====
On pourra utiliser **cURL*... ent afficher le certificat du serveur distant:
<code bash>
# via cURL
curl --verbose --cacert ca-chain... ain:443 2>/dev/null | openssl x509 -noout -text
</code>
Dans l' exemple ci-dessus le certificat de l'au