Thursday, January 26, 2017
Utiliser plusieurs certificats SSL sur un seul serveur apache avec une seul adresse ip
Utiliser plusieurs certificats SSL sur un seul serveur apache avec une seul adresse ip
Utiliser plusieurs certificats SSL sur un seul serveur apache avec une seul adresse ip

Le but de l?article du jour est d?utiliser plusieurs certificats SSL sur une mˆme machine via le SNI (ce qui ‚tait impossible il y a quelques ann‚es de cela cf. wikipedia, le premier patch ‚tant sorti en 2004, les premiŠres impl‚mentation sur les serveurs apache se sont fait sur la version 2.2.12 en Juillet 2009).
Depuis peu donc, on peut s?amuser … installer plusieurs certificats SSL, mais ‡a n‚cessite un tout petit peu de configuration (vraiment un tout petit peu en fait).
Les outils n‚cessaire :
- Des certificats SSL (de pr‚f‚rences valide c?est gratuit chez startSSL)
- Un serveur apache de version 2.2.12 ou sup‚rieur
- La librairie openssl 0.9.8j ou sup‚rieur
il faut modifier la config ® /etc/apache2/ports.conf ¯ et faire en sorte que le ifmodule du mod_ssl ressemble … ‡a :
- <IfModule mod_ssl.c>
- NameVirtualHost *:443
- Listen 443
- </IfModule>
Puis enfin cr‚er le fichier de configuration s?occupant de vos certificats et de les servir suivant le nom de domaine demand‚ (chez moi blog.gaetan-grigis.eu et un-autre-sous-domaine.gaetan-grigis.eu).
- <VirtualHost *:443>
- ServerName aitibourek.blogspot.com
- DocumentRoot /var/www/blogaitibourek
- SSLEngine on
- SSLProtocol all -SSLv2
- SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM
- SSLCertificateFile /etc/apache2/cert/blog.crt
- SSLCertificateKeyFile /etc/apache2/cert/blog.key
- SSLCertificateChainFile /etc/apache2/cert/sub.class1.server.ca.crt
- SSLCACertificateFile /etc/apache2/cert/ca.crt
- SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
- CustomLog /var/log/apache2/ssl_request.log
- "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x "%r" %b"
- </VirtualHost>
- <VirtualHost *:443>
- ServerName un-autre-sous-domaine.aitibourek.fr
- DocumentRoot /var/www/un-autre-sous-domaine
- SSLEngine on
- SSLProtocol all -SSLv2
- SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM
- SSLCertificateFile /etc/apache2/cert/un-autre-sous-domaine.crt
- SSLCertificateKeyFile /etc/apache2/cert/un-autre-sous-domaine.key
- SSLCertificateChainFile /etc/apache2/cert/sub.class1.server.ca.crt
- SSLCACertificateFile /etc/apache2/cert/ca.crt
- SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
- CustomLog /var/log/apache2/ssl_request.log
- "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x "%r" %b"
- </VirtualHost>
NB: On peut bien s–r en cr‚er autant qu?on veut, c?est pas limit‚ … deux sous-domaines.
Available link for download