Activer le support HTTPS
Ensuite on configure apache2 :
a2enmod ssl
Créer un virtualHost avec les paramètres suivants (penser à corriger les chemins !) :
<VirtualHost *:443>
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/serveur.domaine.fr.pem
SSLCertificateKeyFile /etc/apache2/ssl/serveur.domaine.fr.key
SSLCertificateChainFile /etc/apache2/ssl/serveur.domaine.fr-chain.pem
SSLProtocol all -SSLv2
SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM
BrowserMatch "MSIE [2-6]" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
# MSIE 7 and newer should be able to use keepalive
BrowserMatch "MSIE [7-9]" ssl-unclean-shutdown
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
ServerAdmin webmaster@domaine.fr
ServerName serveur.domaine.fr
DocumentRoot /home/httpd/serveur.domaine.fr/html/
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /home/httpd/serveur.domaine.fr/html/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
</Directory>
ErrorLog /var/log/apache2/serveur.domaine.fr.error.log
LogLevel warn
CustomLog /var/log/apache2/serveur.domaine.fr.access.log combined
CustomLog /var/log/apache2/serveur.domaine.fr.ssl.log "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
ServerSignature Off
</VirtualHost>
Redémarrer apache2 pour activer le support. Par défaut, c'est le port 443 qui sera utilisé.
On peut utiliser SNI (support de plusieurs hôtes virtuels HTTPS sur la même IP). Pour cela, dans le fichier /etc/apache2/ports.conf, activer
NameVirtualHost *:443Rappel : le SNI ne fonctionne pas avec les ordinateurs antérieurs à Windows XP inclus (http://en.wikipedia.org/wiki/Server_Name_Indication) !
Si on veut ces anciens navigateurs, il est nécessaire de mettre chaque virtualHost sur une adresse IP différente (et donc que le serveur les aie dans sa configuration réseau). Cette adresse IP doit alors être placée dans la définition du virtual Host à la place de l'étoile.
