Héberger un site internet est aujourd’hui très facile et accessible au grand publique en souscrivant à un hébergement partagé. Pourtant, il arrive souvent que pour sécuriser son site web avec un certificat SSL, il faudra débourser un somme importante en plus du service d’hébergement. Le prix d’un certificat peut même être plus cher que l’hébergement annuel lui-même.

Heureusement que depuis un certain temps, Let’s Encrypt a été créé pour permette à tous de créer gratuitement un certificat SSL. Son utilisation n’est cependant pas très facile et un utilisateur lambda pourrait facilement s’y perdre. Surtout que dans la majorité des cas, Let’s Encrypt est utilisé sur un serveur avec un accès SSH (et même root) qui n’est pas forcément disponible sur un hébergement partagé.

Nous allons voir ainsi comment créer un certificat et local sur son ordinateur et l’ajouter ensuite au serveur partagé via cPanel.

Pour cet exemple, j’ai utilisé Mac OS mais le principe reste le même pour les autres systèmes.

Nous commençons par cloner le dépôt git de Let’s Encrypt. Votre ordinateur doit donc disposé de git préalablement. Nous saisissons alors la commande suivante:

Ensuite, nous entrons dans le nouveau répertoire créé et exécutons la commande de création du certificat en mentionnant le ou les domaines concernés (pour mon cas mikaoelitiana.name et www.mikaoelitiana.name):

Let’s Encrypt va ensuite vouloir validé que j’ai bien accès à ce domaine et va me demander de créé un fichier en particulier dans un répertoire du site internet:

Je peux ainsi créer le dossier .well-known/acme-challenge à la racine du site web et y ajouter un fichier nommé 7NJRBCoEhqM3aRhMz9gaZ1st2LDwA5RgCDqbHZdLQvI contenant 7NJRBCoEhqM3aRhMz9gaZ1st2LDwA5RgCDqbHZdLQvI.TcEBI4cemuAdQQi4Vo0OA-aEtQc75M9-c3t0ABTCu9A. Notez que cette chaîne sera créée aléatoirement et ne sera donc jamais la même ailleurs.

Après cette étape, le certificat sera généré et un message indiquera l’emplacement des fichiers ainsi que la date d’expiration du certificat.

Nous pouvons enfin nous rendre dans le dossier indiqué et voir le contenu des fichiers générés. Un accès root est normalement demandé donc nous allons exécuter :

Je me rends ensuite dans mon cPanel pour y ajouter ces fichiers du certificat. Dans mon cas, il y a un menu SSL/TLS qui permet de gérer mes certificats par domaines.

Un formulaire va alors me permettre de choisir le domaine à sécuriser, le contenu du certificat (CRT) qui correspond au fichier cert1.pem, Private Key (KEY) qui est dans le fichier privkey1.pem et Certificat Authority Bundle qui est dans le fichier chain1.pem

Une fois que c’est fait, je peux maintenant accéder à mon site en utilisant https.

Un grand merci Let’s Encrypt et n’hésitez pas à les soutenir et partager autour de vous.

Source: https://community.letsencrypt.org/t/tutorial-for-os-x-local-certificates-and-shared-hosting/6859/16