Guide sur le Certificat SSL
Les différents certificats SSL
Introduction
Un certificat SSL est un élément indispensable à la sécurisation de son site web. En effet, il permet le chiffrement des échanges entre le visiteur et le site, par exemple lors d'un paiement sur un site marchand.
Voici les différents certificats proposés sur notre [boutique Ikoula].
- Rapid SSL
- Quick SSL prenium
- True Business EV
- True Business SAN
- True Business EV SANWildCard SSL
Commander ou renouveler un certificat SSL
Déroulement
Dans le cadre d'une commande d'un nouveau certificat SSL, la première étape consiste à se rendre sur la [boutique Ikoula]. Vous le pouvez depuis votre extranet.
Vous pouvez choisir le certificat SSL que vous voulez en cliquant sur "Commander".
La page suivant est divisez en 5 etapes:
- La première consiste à choisir le certificat SSL et la durée de la licence (1 ou 2 ans avant l'expiration)
- La seconde est la génération du CSR et l'inscription du nom de domaine afin que le certificat soit lié à celui-ci (Il n'est pas obligatoire de l'avoir avant de passer vote commande)
- Si vous n'avez pas le CSR, alors entrer seulement le 'Nom commun' (nom du domaine) et cliquez sur 'Continuer'. Vous serez envoyé directement à l'étape 4.
- Si vous avez un CSR alors cochez 'Oui, j'ai le fichier CSR' et choisissez le logiciel serveur (Windows ou Linux) et collez votre CSR à l'endroit indiqué. N'oubliez pas d'inscrire le 'nom commun'.
- La troisième étape consiste à indiquer vos informations.
- La quatrième étape consiste à choisir la durée du certificats SSL et de configurer une adresse mail afin de recevoir la validation du certificat et du nom de domaine lié.
- Et la cinquième étape consiste au paiement de votre certificat.
Généré son CSR
Introduction
Le CSR ou Certificate Signing Request est un document essentiel dans le cadre d'une demande de certificat SSL. Il permet d'établir l'identité du demandeur du certificat.
Voici une aide concernant la génération de son CSR: https://fr-wiki.ikoula.com/fr/G%C3%A9n%C3%A9rer_son_CSR
Document pour la validation d'un certificat SSL
Introduction
Voici la liste des documents dont vous aurez besoin pour la validation de votre commande ou pour le renouvellement d'un certificat de sécurité (SSL).
Pour les certificats sans validation de l'identité (Quick SSL ou Instant SSL)
Ce type de certificat est pour la protection d'un élément unique ex: www.votredomaine.tld
Ces certificats ne fournissent pas d'information sur le propriétaire.
Pour les certificats de type DV Quick SSL ou Instant SSL, aucun document supplémentaire n'est requis. La validation pour ce type de certificat est uniquement au niveau du domaine avec une validation par e-mail.
Dans le cadre d'une validation de certificat SSL seules les adresses standardisées représentant un administrateur ou un responsable technique peuvent être utilisées.
Parmi les adresses autorisées en voici quelques-unes:
- admin@votredomaine.tld ;
- administrator@votredomaine.tld ;
- postmaster@votredomaine.tld ;
- webmaster@votredomaine.tld ;
- hostmaster@votredomaine.tld.
Si aucune de ces adresses mail n'existe, ou si vous n'y avez pas accès, les autorités de certification proposent désormais la validation via une entrée DNS dans la zone de chaque FQDN protégé par le certificat.
Il s'agira dans ce cas d'ajouter une entrée TXT fournie par l'autorité de certification, contenant une série de données générées aléatoirement. L'autorité de certification interrogera, une fois la propagation DNS terminée, la zone et pourra valider la commande de votre certificat, ou simplement l'étape DV en cas de certificat à plus haut niveau de validation.
Exemple de format d'entrée:
_dnsauth.votrenomdedomaine.tld TXT 9v9vspgt9r6n6330x587l5sns2hbtcpn5
Pour les certificats avec validation de l'identité (True BusinessID ou True BusinessID SAN ou WildCard)
Ces certificats fournissent des d'informations sur le propriétaire.
Cette gamme de certificat est disponible en SAN ( multidomaines ) et permet de protéger jusqu'à 5 domaines. Ou en Wilcard pour protéger tout un domaine et sous-domaine de 1er niveau, comme mondomaine.com et forum.mondomaine.com mais pas www.forum.mondomaine.com.
Pour les certificats de type OV True BusinessID ou True BusinessID SAN. Ces certificats demande plus de temps pour la validation car nécessite la validation de l'identité de la personne ou de l'organisme demandant le certificat.
Cette validation passe par quatre étapes :
- Validation de la possession du domaine à protéger, cette validation passe par une validation par e-mail.
- Validation de l'identité de la personne ou de l'organisme demandant le certificat.
- Dans le cas d'une entreprise, cela passera par l’envoi d'un KBIS ou autre document prouvent l'enregistrement de la société.
- Dans le cas d'un particulier ou d'une profession libérale, il faudra fournir une lettre Notariale attestant de l'identité du demandeur du certificat.
- Validation de la conformité et disponibilité des informations sur Internet. Dans cette phase l'organisme fournissant vont vérifier que les informations présentes sur internet correspondent au document qui sont en leur possession. Les informations présentes sur les nom de domaines ou sur le KBIS doivent être identiques, il faut aussi que ces informations soient présentes dans un annuaire Public avec un numéro de téléphone joignable.
- La dernière phase de vérification est une confirmation téléphonique de la demande de certificat en contactant le numéro présent dans l'annuaire Public.
Les certificats de type Green Bar (True BusinessID EV ou True BusinessID EV SAN)
Les certificats de type EV True BusinessID EV demandent la même validation que les certificats avec validation d'identité (OV). Ce pendant ce type de certificat demande une demande d’agrément signé d'un directeur de la société. De plus la validation téléphonique sera destinée à une ressource RH qui devra valider la présence du directeur au sein de la société.
Ce certificat permet d'avoir la Green Bar.
Cette gamme de certificat est disponible en SAN ( multidomaines ) et permet de protéger jusqu'à cinq domaines.
Attention, ce type de certificat n'est pas dé-livrable aux particuliers ou aux professions libérale.
Liens utile
- Agrémentent pour la commande du certificat : https://www.geotrust.com/support/true-businessid/ev-validation-requirements/acknowledgement-agreement.pdf
- Liste des annuaires Public accepté : http://world.192.com/europe/france
- Information sur les certificats que nous vendons : https://www.ikoula.com/fr/certificats-ssl
Renouvellement d'un certificat SSL
Dans le cadre du renouvellement d'un certificat SSL la procédure est simplifiée, en effet Ikoula revient vers vous automatiquement en amont de la date d'expiration de votre certificat pour vous informer de l'expiration de votre certificat. Il vous est également demandé si les informations en notre possession sont toujours exactes.
Informations inchangées
Si les informations fournies lors de la commande du certificat SSL sont toujours exactes le certificat SSL sera renouvelé à l'issue de votre confirmation.
De plus, vous pouvez demander le renouvellement automatique avec le même CSR et la même clé, si votre site reste sur le même serveur et qu'il n'y a pas de modifications d'informations.
Informations changées
Si les informations ont changé il vous sera demandé, lors de la prise de contact, de nous fournir les nouveaux documents afin d'établir la commande de renouvellement.
Mise en place d'un certificat SSL
Linux (apache/Nginx)
Serveur dédié
Ces instructions sont valables pour tous les serveurs utilisant Apache+mod_ssl
Création de la clef privée
Connectez vous en root sur le serveur Linux et allez dans le répertoire de configuration de votre serveur Apache, exemple:
cd /etc/httpd/conf
On va placer les fichiers de travail ici, mais vous pouvez choisir un autre répertoire.
On génère la clef avec la commande suivante en définissant un nom de fichier qui vous correspond:
openssl genrsa 2048 > www.xxx.com.key
Si vous souhaitez que cette clef dispose d'un mot de passe (qui vous sera demandé à chaque démarrage d'apache, ajoutez-des3 après genrsa).
Vous pouvez aussi améliorer la qualité de la clef en ajoutant après genrsa les instructions -rand /var/log/messages, ceci permet d'introduire des nombres aléatoires.
Faites une copie de sauvegarde de ce fichier .key
Protégez votre fichier en faisant:
chmod 400 www.xxx.com.key
Demande de certificat CSR
Utilisez cette commande pour générer le CSR:
openssl req -new -key www.xxx.com.key > www.xxx.com.csr
Le système va vous demander de saisir des champs, remplissez les en respectant les instructions données :
- Country Name (2 letter code) []: (le plus souvent FR)
- State or Province (full name) [Some-State]: (le nom du département)
- Locality Name (eg, city) []: (le nom de votre ville)
- Organization Name (eg, company) []: (le nom de votre organisation)
- Organizational Unit Name (eg, section) []: (ce que vous voulez)
- Common Name (eg, YOUR name) []: (le nom du site a sécuriser)
- Email Address []: (ne rien mettre)
Dépôt de demande
Vous avez deux possibilités:
- Vous pouvez déposer la demande depuis l’étape 2 de la commande (voir ci-dessus Commander ou renouveler un certificat SSL)
OU
- Vous pouvez nous fournir votre CSR directement au support à l'adresse support@ikoula.com, nous remonterons la demande directement à notre service de production.
Récupération du certificat
Suite à votre demande, le service de production s'occupera de commander votre certificat et reviendra vers vous par mail pour vous le communiquer.
Configuration d'Apache
Trouvez le fichier de configuration existant pour votre apache, par défaut c'est /etc/httpd/conf/httpd.conf mais il n'est pas rare que la configuration du SSL soit dans un autre fichier, par exemple /etc/httpd/conf.d/ssl.default-vhost.conf
Ajoutez ceci dans la configuration d'apache:
SSLEngine on
SSLCertificateFile /etc/httpd/conf/www.virtualhost.com.crt
SSLCertificateKeyFile /etc/httpd/conf/www.virtualhost.com.key
SSLCACertificateFile /etc/httpd/conf/cert.pem
Une fois la modification faite, relancer le serveur Apache.
Pour plus d'informations sur la configuration spécifique de ApacheSSL, voir http://www.modssl.org/
Windows (IIS)
IIS 7
Installation de la clé
Allez dans le panneau de configuration, puis dans les outils d’administration. Double-cliquez sur Gestionnaire des services Internet (IIS) pour lancer la console de gestion d'IIS 7.0.
'Attention: Cette opération nécessite des privilèges administrateur'.
Dans la colonne de gauche, présentant l'arborescence de votre serveur IIS, placez-vous sur l'élément racine, puis double cliquez sur Serveur de certificats dans la partie centrale de la console.
Dans la partie droite de la console, dans la colonne Action, cliquez sur Terminer la demande de certificat. Un assistant se lance et vous demande d’aller chercher le fichier que notre équipe vous a fourni et validez.
Votre certificat est désormais crée.
Configuration de IIS
Vous devez indiquer à IIS que vous souhaitez utiliser ce certificat pour sécuriser le flux SSL sur notre serveur. Cela s'effectue toujours comme dans la première partie depuis la console de gestion d'IIS.
Tout d'abord, il faut sélectionner le site web sur lequel nous souhaitons activer le SSL, puis cliquer dans la colonne de droite sur liaisons puis sur le bouton ajouter.
Sélectionnez https dans la liste déroulante, laissez le port 443 inchangé, c’est celui par défaut de https. Sélectionnez ensuite le certificat que nous venons de créer dans la liste prévue à cet effet, cliquez sur OK, et voilà c'est terminé.
Pour vérifier que votre site est bien accessible par le biais du protocole SSL tapez dans votre navigateur internet l'URL de votre site, précédé de https et non du protocole http. Un petit cadenas doit apparaitre sur votre navigateur signalant que la connexion est sécurisée.
Vous devez maintenant en cas de mutli-domaines sur votre serveur web attribuer une adresse IP unique à ce site web et penser à modifier les serveurs DNS pour que votre site web resolve correctement.
Plesk 12.5 et Onyx
Plesk 12.5
Let's Encrypt
Introduction
Let's Encrypt est une autorité libre, automatisé du Groupe de recherche sur Internet (ISRG). Il permet à quiconque d'installer un certificat SSL gratuit de confiance sur leur site web et bénéficier de la sécurité renforcée d'une connexion chiffré fournit. Contrairement à un certificat SSL auto-signé, qui est également gratuit et sécurisé (mais non vérifié), le certificat Let's Encrypt est reconnu comme entièrement vérifié et affiche l'icône de cadenas dans la barre d'adresse des navigateurs modernes.
Création du certificat
Dans le menu principal de votre prestation, cliquez sur les Sites Web & Domaines, et cliquez sur l'élément de menu Let's encrypt.
Entrez une adresse email valide dans le champ et cochez la case pour inclure www ...
Une fois installé, vous serez renvoyé à la page précédente, où un message de réussite vous permettra de connaître que le processus est terminé. Si le processus n'a pas réussi, vérifiez que le domaine que vous avez entré est valide. Le domaine entré dans le formulaire doit :
- être correctement orthographié.
- être enregistré et actif.
Si vous venez de créer ou d'ajouter le domaine à votre serveur, assurez-vous que vous avez également ajouté les enregistrements DNS appropriés (un enregistrement pointant vers votre adresse IP du serveur, au minimum.
Depuis Sites Web & Domaines dans votre prestation, cliquez sur Paramètres d'hébergement de votre domaine et veiller à ce que la zone de support de SSL est vérifiée.
Renouvellement
Par défaut, les certificats SSL Let's Encrypt sont valables pendant 90 jours, mais Plesk automatise le renouvellement une fois par mois. La période de renouvellement est plus court permet de garantir votre sécurité et le processus devrait être complètement transparent pour vous et les visiteurs de votre site. Si jamais vous avez besoin de renouveler un certificat manuellement, vous pouvez le faire à partir du menu Let's Encrypt, vous aller avoir le bouton renouveler si un certificat est déjà installé.
Installer un certificat SSL sur un hébergement mutualisé
Déroulement
Connectez vous à votre espace client: https://orderng02.ikoula.com/cp/
Choisissez votre prestation dans le menu déroulant en haut à droite.
Cliquez en suite sur l'onglet Sites web & domaines et vous arriverez sur votre interface Plesk.
Cliquez sur Certificats SSL, puis sur Ajouter un certificat SSL
Dans le formulaire il faudra rentrer un nom pour votre certificat SSL dans le champ Nom du certificat
Puis envoyez votre certificat SSL ainsi que la clé privée et le certificat intermédiaire en mode texte 'OU' directement en ajoutant les fichiers.
Une fois fait, il vous suffit de cliquer sur Charger le certificat.
Le certificat est maintenant ajouté, il faut maintenant le mettre en place sur votre site.
Pour cela revenez dans l'onglet Sites web & domaines et cliquez sur Paramètres d'hébergement
Dans la partie Sécurité sélectionnez votre certificat SSL puis cliquez sur Appliquer en bas de la page.
Votre site web est désormais sécurisé.
HAProxy
Génération de clé privée et de CSR
Pour générer une clé privée et un CSR, vous pouvez utiliser l'outil Openssl pour générer un fichier pem.
Installation et configuration SSL/TLS
Pour installer un certificat sous Haproxy, il faut utiliser un fichier pem, contenant votre clé privée, votre certificat au format X509 ainsi que sa chaine de certification. Pour cela, il peut être nécessaire de concaténer vos différents fichiers par exemple :
#Dans le cas d'un certificat et d'une chaine séparés :
cat exemple.com.key exemple.com.crt exemple.com-chaine.txt > haproxy.pem
#Dans le cas d'un certificat contenant déjà la chaine de certificat:
cat exemple.com.key exemple.com-avec-chaine.pem > haproxy.pem
Placez ensuite votre fichier dans votre dossier haproxy (normalement /etc/haproxy/).
Pour configurer votre instance d'Haproxy d'une manière optimale, garantissant le maximum de sécurité et de compatibilité, nous vous recommandons d'ajouter les paramètres suivants.
global
ssl-default-bind-options no-sslv3 no-tls-tickets force-tlsv12
ssl-default-bind-ciphers !EDH:!RC4:!ADH:!DSS:HIGH:+AES128:+AES256-SHA256:+AES128-SHA256:+SHA:!3DES:!aNULL:!eNULL
tune.ssl.default-dh-param 2048
frontend http-in
mode http
option httplog
option forwardfor
option http-server-close
option httpclose
bind VOTREIP:80
redirect scheme https code 301 if !{ ssl_fc }
frontend https-in
option httplog
option forwardfor
option http-server-close
option httpclose
rspadd Strict-Transport-Security:\ max-age=31536000;\ includeSubDomains
rspadd X-Frame-Option:\ DENY
bind VOTREIP:443 ssl crt /etc/haproxy/haproxy.pem ciphers !EDH:!RC4:!ADH:!DSS:HIGH:+AES128:+AES256-SHA256:+AES128-SHA256:+SHA:!3DES:!aNULL:!eNULL force-tlsv12 no-sslv3