Apache 2.0.x / Windows - MOD SSL19/05/2004 - Nouvelle édition du 28/07/2004
Accueil
Par
Joe l'indien
Vous rêvez de faire du HTTPS sous Windows avec Apache 2.0.x ? C'est possible ! Nous allons voir comment faire pour patcher notre serveur Web préféré ;)
Avant-Propos
Ce qu'il vous faut
Installation
Les fichiers de ce tutoriel
Avant-Propos
Il existe beaucoup de "tout en un" pour installer Apache + PHP + Perl + MySQL + mod_ssl + etc. Mais aucun ne vous convient. Vous préférez tout faire vous-même et vous avez bien raison.
C'est un bon casse tête que d'installer mod_ssl sur un serveur Apache 2.0.x sur Windows. Quel source choisir ? Comment faire ? Est-ce que ça marche vraiment ?
Tout au long de ce tutoriel vous allez voir que ce n'est pas si compliqué que ça et même très simple.
Ce qu'il vous faut
Voici les différents éléments nécessaires :
- Apache 2.0.x sous WINDOWS
- OpenSSL (version binaire pour windows)
- PHP installé
Installation
- Décompresser OpenSSL dans un dossier nommé ssl à la racine de votre site.
- Copier les fichiers libeay32.dll et libssl32.dll du répertoire ssl dans votre dossier système. (C:\WINDOWS\System32\ - C:\WINNT\System32\ - etc...)
- Copier le fichier openssl de votre répertoire php/openssl/ dans le répertoire ssl que nous venons de créer.
- Copier le fichier mod_ssl.so dans le dossier Apache2/modules/
- Copier le fichier ssl.conf dans le dossier Apache2/conf/
Vous suivez toujours :b ?! Ok alors on continue !
- Ouvrir un éditeur de texte basique (Bloc Notes/NotePad, Ultra edit, etc...)
- Copier ce qui suit et remplacer site par le nom de votre site
@echo off
openssl req -config openssl.cnf -new -out site.csr
pause && cls
openssl rsa -in privkey.pem -out site.key
openssl x509 -in site.csr -out site.cert -req -signkey site.key -days 365
openssl x509 -in site.cert -out site.der.crt -outform DER
pause && exit
Sauvegarder le fichier sous SSL.bat dans votre répertoire ssl. ATTENTION ne pas l'enregistrer sous SSL.bat.txt sinon ce n'est pas prêt de fonctionner ;)
Suivez les instructions à l'écran DOS.
Une fois tout ceci renseigné, il devrait y avoir ces fichiers dans le répertoire ssl :
- site.key
- site.cert
- .rnd
- Et deux ou trois autres fichiers qui ne nous intéressent pas ;)
Avant tout, effacez le fichier .rnd et créez un autre dossier ssl dans le répertoire conf d'Apache2 (Apache2/conf/). Copiez y les fichiers site.key et site.cert.
Allez encore un petit effort on y est presque ;) Stoppez Apache et ouvrez votre fichier httpd.conf Recherchez la ligne
Listen 80
et ajoutez en dessous
Listen 443
afin qu'Apache écoute aussi ce port.
Recherchez la ligne
#LoadModule ssl_module modules/mod_ssl.so
puis décommentez là en enlevant le # devant.
Ajoutez les lignes suivantes à la fin de votre fichier httpd.conf :
SSLMutex default
SSLRandoomSeed startup builtin
SSLSessionCache none
< VirtualHost 127.0.0.1:443> SSLEngine On
SSLCertificateFile conf/ssl/site.cert
SSLCertificateKeyFile conf/ssl/site.key
< /VirtualHost>
Voilà ! Si vous avez tout bien suivi correctement, si vous tapez l'URL https://127.0.0.1/ dans votre navigateur, vous devriez voir la fenêtre avec votre certificat et ainsi basculer en mode https :D !
Comme vous l'avez sûrement remarqué, votre certificat n'est pas valide et encore heureux ! Imaginez l'escroquerie si c'était aussi simple de créer un certificat valide.
Les fichiers de ce tutoriel
Vous pouvez télécharger les fichiers de ce tutoriel ci-dessous :
N'oubliez pas ! Vous pouvez combiner ce tutoriel avec mon tutoriel sur les Virtual Host ici :
http://web.developpez.com/tutoriel/apache/vhost/
LONGUE VIE À DEVELOPPEZ.COM !
Et un grand merci à toutes les personnes qui s'investissent dans cette communauté.
Ce document est issu de http://www.developpez.com et reste la propriété exclusive de son auteur. La copie, modification et/ou distribution par quelque moyen que ce soit est soumise à l'obtention préalable de l'autorisation de l'auteur.
|