sécuriser Apache2 avec SSL
Par Laurent le mardi 18 mars 2008, 12:30 - réseau - Lien permanent
Le protocole SSL vous permet de rendre sûres les transactions (authentification par exemple) sur votre serveur Web. Cette explication est largement inspirée de ce tutoriel.
Dans le cas développé ici, le certificat sera auto-signé.
Les commandes sont exécutées comme root sur une Debian installée sur un Mac Mini (G4).
Activer le module SSL :
Recharger la configuration d'Apache :a2enmod ssl
Installation d'Openssl :/etc/init.d/apache2 force-reload
Génération du certificat :apt-get install openssl
Répondre aux questions :sudo openssl req -x509 -nodes -days 365 -newkey rsa:1024 -out /etc/apache2/server.crt -keyout /etc/apache2/server.key
Sécuriser la clé :Country Name (2 letter code) [AU]:BE
State or Province Name (full name) [Some-State]:Belgique
Locality Name (eg, city) []:Bruxelles
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Ma société
Organizational Unit Name (eg, section) []:Ma cellule
Common Name (eg, YOUR name) []:Mon nom
Email Address []:mon@mail.be
Ajouter le port 443 à la configuration d'Apache :chmod 440 /etc/apache2/server.key
Ce qui donne :vi /etc/apache2/ports.conf
Editer la configuration d'Apache (si rien n'a été changé, le fichier est le suivant) :Listen 80
Listen 443
Ce qui donne :vi /etc/apache2/sites-available/default
Recharger la configuration d'Apache :NameVirtualHost ip_serveur:80
<VirtualHost ip_serveur:80>
ServerName macmini.be
...
</VirtualHost>
NameVirtualHost ip_serveur:443
<VirtualHost ip_serveur:443>
ServerName macmini_ssl.be
...
SSLEngine on
SSLCertificateFile /etc/apache2/server.crt
SSLCertificateKeyFile /etc/apache2/server.key
</VirtualHost>
Vos sites sont maintenant accessibles en http et https./etc/init.d/apache2 force-reload