Créez votre PDF

No pages found in Basket

Certificats SSL - Paramétrage sous Apache

Sommaire[Masquer]

 

Dans cette page nous allons décrire la mise en place de certificats auto-signés et de certificats générés par Let'sEncrypt et leur paramétrage au sein d'Apache.

 

1. Certificat auto-signé

Plusieurs cas de figure sont envisageables et décrits dans cette page : 

  • Paramétrage d'un certificat existant
  • Création et paramétrage d'un certificat auto-signé (sans autorité de certification)
  • Création d'une autorité de certification et d'un certificat auto-signé

Note 1 : Dans le cas d'un certificat auto-signé sans autorité de certification, l'application fonctionnera via HTTPS mais le navigateur Web indiquera que le site n'est pas un site de confiance. Il faudra alors valider l'exception au niveau de la page du navigateur pour accéder à l'application QALITEL.

Note 2 : Pour l'exemple, nous considérerons le package SCOQI_FULLWEB contenant l'ensemble de l'environnement nécessaire au fonctionnement des applications QALITEL. Les chemins seront donc à adapter selon la version de ce package ou si vous disposez d'un Apache installé séparément.

 

Toutes les lignes de commande seront à saisir dans la console DOS de votre serveur.

Le répertoire d'apache contenant OpenSSL.EXE est le suivant : C:\scoqi_fullweb\Apache2.4.39Win64\bin

On se placera donc dans ce répertoire pour y exécuter les commandes qui vont suivre.

On créera un répertoire "certificats" dans le répertoire d'Apache (C:\scoqi_fullweb\Apache2.4.39Win64\certificats) pour y stocker les différents fichiers qui seront créés.

 

1.1. Création et paramétrage d'un certificat auto-signé (sans autorité de certification)

1.1.1. Génération de la clé RSA

Pour générer une clé avec mot de passe


openssl genrsa -aes256 -out ..\certificats\qalitel.key 4096

Si vous souhaitez retirer la demande de mot de passe, entrez la commande ci-dessous :  


openssl rsa -in qalitel.key -out ..\certificats\qalitel.key

 

Pour générer une clé sans mot de passe (solution que nous adoptons) : 


openssl genrsa -out ..\certificats\qalitel.key 4096

 

1.1.2. Génération du certificat auto-signé


openssl req -new -x509 -nodes -sha1 -key ..\certificats\qalitel.key -out ..\certificats\qalitel.crt -days 36500 -config ..\conf\openssl.cnf

 

1.1.3. Modification des fichiers de configuration d'Apache

Dans le fichier HTTPD.CONF (C:\scoqi_fullweb\Apache2.4.39Win64\conf\httpd.conf), décommentez les 2 lgines mentionnées ci-dessous (supprimez le signe #) :


LoadModule ssl_module modules/mod_ssl.so
Include conf/extra/httpd-ssl.conf

 

Dans le fichier HTTPD-SSL.CONF (C:\scoqi_fullweb\Apache2.4.39Win64\conf\extra\httpd-ssl.conf), effectuez les modificaitons suivantes : 


DocumentRoot "c:/scoqi_fullweb/www/"
ServerName localhost:443
ServerAdmin scoqiCette adresse e-mail est protégée contre les robots spammeurs. Vous devez activer le JavaScript pour la visualiser.">@scoqi.fr
ErrorLog "C:/scoqi_fullweb/Apache2.4.39Win64/logs/ssl_error.log"
TransferLog "C:/scoqi_fullweb/Apache2.4.39Win64/logs/ssl_access.log"
SSLCertificateFile "C:/scoqi_fullweb/Apache2.4.39Win64/certicats/qalitel.crt"
SSLCertificateKeyFile "C:/scoqi_fullweb/Apache2.4.39Win64/certificats/qalitel.key"

puis paramétrez dans ce même fichier la balise <Directory> ou l'Alias correspondant à votre installation : 


alias /scoqi "c:/scoqi_fullweb/www"
<Directory "c:/scoqi_fullweb/www">
   AllowOverride all
   Options FollowSymLinks
   directoryindex index.php
   Require all granted
</Directory>

 

Pour vérifier la configuration (erreurs de syntaxe notamment), entrez la commande suivante : 


httpd -t

 

Rédémarrez Apache puis lancez l'application QALITEL. Vous aurez alors un message vous informant que la connexion n'est pas sécurisée.

Il vous faudra alors autoriser l'exception

 

 

1.2. Création d'une autorité de certification et d'un certificat auto-signé

Il est nécessaire d'initialiser la variable d'environnement suivante : 


OPENSSL_CONF       C:\scoqi_fullweb\Apache2.4.39Win64\conf\openssl.cnf

SSL-Var-environnement

 

Ouvrir ensuite un Terminal et se placer dans le répertoire contenant le programme OpenSSL


cd  C:\scoqi_fullweb\Apache2.4.39Win64\bin

Lancer ensuite le programme   "openssl"

SSL-cmd1

Génération de la clé RSA 4096 pour le ROOT CA. Cette clé sera stockée dans certificats/ca.key

(Pour protéger cette clé avec un mot de passe, il faut ajouter -des3  )


genrsa -out ..\certificats\ca.key 4096

 SSL-cmd2

Création du certificat auto-signé ROOT CA qui sera stocké dans le fichier ca.crt


req -new -x509 -days 1826 -key ..\certificats\ca.key -out ..\certificats\ca.crt

(Le nombre de jours 1826 correspond à une durée de validité de 5 ans)

SSL-cmd3

Création du subordonate CA


genrsa -out ..\certificats\ia.key 4096

SSL-cmd4

 

Sortir d'OpenSSL (avec la commande "exit") et y ré-entrer pour la poursuitedes commandes sinon avec la version 1.1.0 d'OpenSSL il y a une erreur "Problem créeating object tsa_ploicy1=1.2.3.4.1"

 

Faire la demande de certificat pour le subordonate CA :


req -new -key ..\certificats\ia.key -out ..\certificats\ia.csr

SSL-cmd5

(Ne rien entrer dans les 2 derniers "extra" attributes)