Important :
Si vous quittez Gandi AI pour installer un certificat SSL pour un de vos sites web, des prérequis sont à effectuer, je vous invite à consulter la documentation suivante pour ce faire avant de continuer ce tutoriel.Dans un premier temps, vous devez installer l'application du serveur.
aptitude install apache2
Vous devrez ensuite activer le module ssl (nous redémarrerons Apache plus tard) :
a2enmod ssl
Puis enfin faire en sorte que Apache écoute sur le port HTTPS. Dans le fichier /etc/apache2/ports.conf, ajoutez (ou complétez) :
<IfModule mod_ssl.c>
Listen 443
NameVirtualHost VOTRE_ADRESSE_IP:443
</IfModule>
Il est nécessaire, afin que votre certificat soit reconnu comme émis par une autorité de certification approuvée, de récupérer les certificats intermédiaires fournis par Gandi :
Attention :
L'installation d'un Certificat demande un accès aux droits root. Vous ne pourrez donc pas installer celui-ci sur un serveur GandiAI sans relâcher les droits.Installez vos clefs/certificats et éventuellement certificats intermédiaires (pour former une chaine) dans, par exemple, /etc/ssl:
cp cert-domain.tld.crt /etc/ssl/domain.tld.crt cp monserveur.key /etc/ssl/domain.tld.key cp GandiXXXSSLCA.pem /etc/ssl/GandiXXXSSLCA.pem
Important :
N'oubliez pas de remplacer toutes les occurrences de domain.tld par votre propre domaine. Le nom du fichier représenté par GandiXXXSSLCA.pem varie selon le type de certificat, pensez-donc à utiliser le correspondant au fichier téléchargé à l'étape précédente.Pour ajouter un domaine sur votre apache sécurisé, créez un site dédié:
vi /etc/apache2/sites-available/000-domain.tld-ssl
et ajoutez le virtualhost de votre domaine de la manière suivante :
<VirtualHost VOTRE_ADRESSE_IP:443>
ServerName www.domain.tld
ServerAlias domain.tld
DocumentRoot /var/www/www.domain.tld/
CustomLog /var/log/apache2/secure_access.log combined
SSLEngine on
SSLCertificateFile /etc/ssl/domain.tld.crt
SSLCertificateKeyFile /etc/ssl/domain.tld.key
SSLCACertificateFile /etc/ssl/GandiXXXSSLCA.pem
SSLVerifyClient None
</VirtualHost>
Attention pour GnuTls faites comme ceci :
Ouvrez domain.tld.crt et GandiXXXSSLCA.pem, copiez tout le contenu du fichier GandiXXXSSLCA.pem après —–END CERTIFICATE—– dans le fichier domain.tld.crt
Sauvegardez le fichier domain.tld.crt et configurez votre vhost comme ceci :
<VirtualHost VOTRE_ADRESSE_IP:443>
ServerName www.domain.tld
ServerAlias domain.tld
DocumentRoot /var/www/www.domain.tld/
CustomLog /var/log/apache2/secure_access.log combined
GnuTLSEnable on
GnuTLSPriorities NORMAL
GnuTLSCertificateFile /etc/ssl/domain.tld.crt
GnuTLSKeyFile /etc/ssl/domain.tld.key
</VirtualHost>
puis activez le site SSL et redémarrez apache:
a2ensite 000-domain.tld-ssl /etc/init.d/apache2 restart
Note :
Si votre serveur contient un firewall, n'oubliez pas d'ouvrir le port HTTPS de celui-ci (port 443).En utilisant la commande openssl suivante avec votre adresse IP (ou votre hostname) et le port associé du service (443 dans le cas d'apache2 en SSL):
openssl s_client -connect ip.ip.ip.ip:port
Ou en utilisant le site http://www.digicert.com/help/ pour avoir une visualisation plus graphique.