Plus de Internet sans HTTPS, plus de configuration d'Apache sans SSL et c'est tant mieux.
Comment faire pour avoir un bon score au test Qualys SSL Labs
Comment faire pour avoir un bon score au test Qualys SSL Labs
Générer KEY et CSR
openssl req -new -newkey rsa:2048 -nodes -keyout monserveur.key -out monserveur.csr
Personnellment je conserve mon CSR, KEY et CRT dans la configuration de Apache : /etc/apache2/ssl
Copier le CSR obtenu a son fournisseur. On trouve maintenant des certificats SSL gratuit, perso j'aime bien Namecheap.com pas cher et rapide.
On recoit le CRT le certificat SSL et son bundle qui permet de valider la chaine de validite.
Personnellment je conserve mon CSR, KEY et CRT dans la configuration de Apache : /etc/apache2/ssl
Copier le CSR obtenu a son fournisseur. On trouve maintenant des certificats SSL gratuit, perso j'aime bien Namecheap.com pas cher et rapide.
On recoit le CRT le certificat SSL et son bundle qui permet de valider la chaine de validite.
Configuration typique
<IfModule mod_ssl.c>
<VirtualHost _default_:443>
ServerAdmin webmaster@localhost
ServerName www.monserveur.fr
ServerAlias monserveur.fr
DocumentRoot /var/www/html/prod/monserveur.fr
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory /var/www/html/prod/monserveur.fr>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/monserveur_io.crt
SSLCertificateKeyFile /etc/apache2/ssl/monserveur.io.key
SSLCACertificateFile /etc/apache2/ssl/monserveur_io.ca-bundle
SSLCipherSuite HIGH:!aNULL:!MD5
SSLProtocol all -SSLv2 -SSLv3
SSLHonorCipherOrder on
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
<Directory /usr/lib/cgi-bin>
SSLOptions +StdEnvVars
</Directory>
BrowserMatch "MSIE [2-6]" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
BrowserMatch "MSIE [17-9]" ssl-unclean-shutdown
</VirtualHost>
</IfModule>
<VirtualHost _default_:443>
ServerAdmin webmaster@localhost
ServerName www.monserveur.fr
ServerAlias monserveur.fr
DocumentRoot /var/www/html/prod/monserveur.fr
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory /var/www/html/prod/monserveur.fr>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/monserveur_io.crt
SSLCertificateKeyFile /etc/apache2/ssl/monserveur.io.key
SSLCACertificateFile /etc/apache2/ssl/monserveur_io.ca-bundle
SSLCipherSuite HIGH:!aNULL:!MD5
SSLProtocol all -SSLv2 -SSLv3
SSLHonorCipherOrder on
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
<Directory /usr/lib/cgi-bin>
SSLOptions +StdEnvVars
</Directory>
BrowserMatch "MSIE [2-6]" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
BrowserMatch "MSIE [17-9]" ssl-unclean-shutdown
</VirtualHost>
</IfModule>
Forcer HTTP vers HTTPS
Pour forcer le redirect de HTTP vers HTTPS dans le vhost HTTP ajouter :
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L]