Dans la configuration d'un site sécurisé avec SSL, vous indiquerez les lignes suivantes :
Bash
SSLEngine on SSLCertificateFile /etc/ssl/certs/www-cert.pem SSLCertificateKeyFile /etc/ssl/private/www-key.pem
Pour plus d'informations sur la sécurisation d'un serveur web Apache, lisez notre tutoriel "Sécurisation du serveur web Apache".
Si vous tentez d'accéder à la partie sécurisée de votre site via le protocole https, vous aurez un avertissement "Cette connexion n'est pas certifiée".
Ce qui est tout à fait normal étant donné que notre autorité de certification n'est pas reconnue par défaut. Pour établir cette confiance, l'utilisateur doit ajouter le certificat de votre autorité dans la liste des autorités de certification de confiance de son ordinateur (ou smartphone, ...).
Pour les PC Linux, pas de problème. Il suffit de copier le certificat de l'autorité (uniquement le certificat) dans l'espace web de votre serveur.
Bash
cp /usr/lib/ssl/misc/demoCA/cacert.pem /var/www/
Ensuite, sur les pc clients, accédez à l'adresse : http://www.informatiweblan.net/cacert.pem
Note : Il faut utiliser le protocole http pour télécharger le certificat car la version https est bloquée par l'avertissement.
Le navigateur web vous demandera de confirmer cette nouvelle autorité.
Si utilisez des certificats uniquement pour vos sites web, cochez uniquement la première case.
Sinon, cochez aussi les autres cases si besoin (pour les protocoles imap et pop3 de votre serveur de messagerie, par exemple).
Le navigateur web n'affichera plus d'avertissement pour les certificats que vous signerez avec votre autorité de certification.
Pour les PC Windows, vous devez convertir le certificat .pem en .cer (format microsoft).
Pour cela, faites la conversion sur le serveur grâce à "OpenSSL".
Bash
cd /usr/lib/ssl/misc/demoCA openssl x509 -inform PEM -in cacert.pem -outform DER -out cacert.cer
Puis, copiez cette version du certificat dans l'espace web de votre serveur.
Bash
cp /usr/lib/ssl/misc/demoCA/cacert.cer /var/www/
Ensuite, sur les pc clients, téléchargez le certificat de votre autorité de certification à l'adresse : http://www.informatiweblan.net/cacert.cer
Note : Il faut utiliser le protocole http pour télécharger le certificat car la version https est bloquée par l'avertissement.
Ouvrez le certificat et cliquez sur "Installer le certificat".
Cliquez sur "Parcourir" et sélectionnez le magasin "Autorités de certification racines de confiances".
Confirmez l'importation du certificat de votre autorité de certification en cliquant sur "Oui".
Les navigateurs web "Internet Explorer" et "Google Chrome" utilisent le magasin de certificats de Windows. Vous n'aurez donc plus d'avertissement pour vos certificats sur ces navigateurs web.
Pour Mozilla Firefox, ouvrez ce navigateur et allez dans le menu (les 3 lignes horizontales) -> Options -> Avancé -> Certificats -> Afficher les certificats -> Autorités.
Ensuite, cliquez sur le bouton "Importer" et sélectionnez le certificat de votre autorité.
Le navigateur web vous demandera de confirmer cette nouvelle autorité.
Si utilisez des certificats uniquement pour vos sites web, cochez uniquement la première case.
Sinon, cochez aussi les autres cases si besoin (pour les protocoles imap et pop3 de votre serveur de messagerie, par exemple).
Maintenant, Mozilla Firefox n'affichera plus d'avertissements pour les certificats signés par votre autorité.
Pour finir ce tutoriel sur la création et l'utilisation d'une autorité de certification sous Linux, voici comment révoquer un certificat.
En d'autres termes : rendre un certificat invalide pour une raison ou pour une autre.
Bash
cd /usr/lib/ssl/misc openssl ca -revoke /etc/ssl/certs/www-cert.pem
Note : OpenSSL vous demandera le mot de passe de la clé privée de l'autorité pour révoquer le certificat souhaité.
Plain Text
Using configuration from /usr/lib/ssl/openssl.cnf Enter pass phrase for ./demoCA/private/cakey.pem: Revoking Certificate 9241C8A0FA4333F6. Data Base Updated
Créez le fichier "crlnumber".
Bash
echo 1000 > /usr/lib/ssl/misc/demoCA/crlnumber
Puis, créer la liste de révocation (CRL)
Bash
cd /usr/lib/ssl/misc openssl ca -gencrl -out demoCA/crl/ca-crl.pem
Conformément à la norme "RFC 5280", la liste de révocation doit être encodée en DER :
Plain Text
Extrait : If the DistributionPointName contains a general name of type URI, the following semantics MUST be assumed: the URI is a pointer to the current CRL for the associated reasons and will be issued by the associated cRLIssuer. When the HTTP or FTP URI scheme is used, the URI MUST point to a single DER encoded CRL as specified in [RFC2585].
Pour encoder cette liste au format DER, utilisez OpenSSL comme ceci :
Bash
openssl crl -inform PEM -in demoCA/crl/ca-crl.pem -outform DER -out demoCA/crl/ca-crl.crl
Pour cela, copiez ce fichier "ca-crl.crl" dans l'espace web de votre serveur.
Bash
cp /usr/lib/ssl/misc/demoCA/crl/ca-crl.crl /var/www/ca-crl.crl
Pour éviter que le cache ne pose problème pour ce test, nous allons vider le cache des listes de révocation de Windows.
Cela vous évitera d'avoir un certificat révoqué non reconnu comme révoqué.
Pour cela, tapez ces 2 commandes dans un "invite de commandes" lancé en tant qu'administrateur.
Vide le cache de CRL (les listes de révocations de certificats) du disque dur :
Batch
certutil -URLCache CRL –delete
Invalide l'utilisation des CRL en cache dans la mémoire et sur le disque dur :
Batch
certutil –setreg chain\ChainCacheResyncFiletime @now
Et enfin, videz le cache de votre navigateur. Ainsi, la révocation sera prise en compte directement.
Après 2-3 minutes, Internet Explorer ainsi que les autres navigateurs vont bloquer l'accès à votre site car le certificat a été révoqué.
Voici l'erreur sous Internet Explorer.
Linux 12/12/2014
Linux 26/12/2014
Linux 17/6/2015
Linux 18/9/2016
Contenu épinglé
Contact
® InformatiWeb-Pro.net - InformatiWeb.net 2008-2022 - © Lionel Eppe - Tous droits réservés.
Toute reproduction totale ou partielle de ce site est interdite et constituerait une contrefaçon sanctionnée par les articles L.335-2 et suivants du Code de la propriété intellectuelle.
Pas de commentaire