Ayant eu du mal à trouver un guide complet pour débuter avec mon VPS pour l’hébergement et la mise en place d’un serveur multisite WordPress, je mets à disposition ce guide étape par étape en espérant qu’il sera assez clair pour vous aider.
Si vous souhaitez suggérer des corrections ou compléter ce guide, n’hésitez pas à me contacter! Merci.
J’ai réalisé ces étapes en partant d’un VPS et de noms de domaine commandés chez OVH mais la majeure partie sera probablement applicable pour un VPS commandé ailleurs.
Aussi, j’utilise Windows en local avec SSH pour me connecter au serveur VPS.
Outre la configuration basique, l’objectif final est de disposer d’un seul serveur pour gérer un ensemble de sites édités sous WordPress – et donc localisés sous différents dossiers sur le serveur. Chaque site aura un nom de domaine (ou même sous-domaine) différent qu’il faudra alors faire pointer sur l’IP du VPS, et configurer ce dernier pour qu’il redirige chaque domaine sur le dossier du site WordPress correspondant. Pour finir il faudra générer un certificat SSL pour chacun des noms de domaine afin de pouvoir utiliser le protocole HTTPS.
A noter que je réalise l’ensemble des étapes pour de multiples sites WordPress mais les autres alternatives peuvent suivre le même cheminement.
Certaines des étapes qui suivent font également l’objet d’articles séparés, si vous préférez vous y référer directement:
- Comment obtenir un Hébergement VPS chez OVH
- Comment sécuriser son VPS
- Comment installer Apache sur un VPS
- Comment installer PHP et MYSQL sur son VPS
- Comment installer WordPress sur son VPS
- Comment obtenir un certificat SSL gratuit
Par ailleurs, il est aussi possible de compléter ce guide afin de mettre en place une ou plusieurs application NodeJS en parallèle d’un multisite WordPress.
Obtention d’un VPS chez OVH
Avant toute chose, il faut disposer d’un serveur VPS, j’ai commandé le mien chez OVH qui propose des prix abordables: Serveur VPS OVH.
Au niveau de la distribution j’ai choisi Ubuntu avec lequel je suis plus familier, le choix de la gamme, des options et du data center dépend des besoins.
Une fois la commande passée, il faut attendre la mise à disposition du VPS par OVH, ce qui peut prendre quelques minutes. Une confirmation sera alors reçue par mail avec les détails du VPS (IP, compte utilisateur). Le serveur apparaît aussi sous la liste des VPS dans l’espace client OVH.
Nous avons maintenant tout le nécessaire pour passer à l’étape suivante: la connexion à notre VPS et la mise en place de la sécurité basique.
Configuration du VPS et sécurisation basique
Pour commencer il va falloir se connecter à notre VPS afin de configurer un compte utilisateur autre que le compte par défaut défini par OVH. Ensuite, nous désactiverons l’accès de l’utilisateur root et installerons un pare-feu pour améliorer la sécurité de notre serveur.
Première connexion au VPS via SSH
Via l’invite de commande Windows, en remplaçant avec le compte utilisateur et l’IP fournis par OVH.
ssh utilisateur@ip
Puis entrer le mot de passe fourni pour l’utilisateur.
Mot de passe du Super User Root
On va ensuite prendre le rôle du super user pour premièrement lui attribuer un mot de passe.
su root
passwd
On définit ainsi le mot de passe souhaité.
Création d’un nouvel utilisateur
Toujours en tant que root, on créé un nouvel utilisateur.
adduser nouvelutilisateur
On entre les informations demandées, dont le mot de passe, et on peut quitter le super user puis le serveur pour se reconnecter avec notre nouvel utilisateur.
exit
exit
ssh nouvelutilisateur@ip
On utilisera désormais ce compte pour se connecter au VPS via SSH. Si certaines opérations nécessite un privilège plus élevé pour être effectuées, on utilisera alors le super user root.
On peut désormais supprimer le compte initial configuré par OVH lors de la mise à disposition du VPS.
su root
deluser utilisateur
Mise à jour du système
Toujours en tant que root, on continue avec la mise à jour du système.
apt update
apt upgrade
apt dist-upgrade
Modifier le port d’écoute pour SSH
Par défaut, le port d’écoute pour SSH est configuré sur le port 22. Pour limiter les tentetive d’intrusion, on va donc changer ce port SSH par un autre non utilisé. Pour ce faire on va éditer le fichier avec nano.
nano /etc/ssh/sshd_config
# What ports, IPs and protocols we listen for Port 22
Port 2021
On remplace la ligne « #Port 22 » par « Port xxxx », ici je choisis 2021.
Désactiver l’accès SSH via Root
Toujours dans ce fichier, on va désactiver l’accès direct via SSH par l’utilisateur root.
# Authentication:
#LoginGraceTime 2m
PermitRootLogin no
#StrictModes yes
On remplace la ligne « #PermitRootLogin no » par « PermitRootLogin no »
On peut ensuite quitter le fichier Ctrl+X et sauvegarder les modifications.
Finalement, pour que les modifications soient prises en compte, il faut redémarrer le service SSH et quitter le serveur.
/etc/init.d/ssh restart
exit
exit
Pour se reconnecter, il faudra désormais renseigner un paramètre pour le numéro de port défini.
ssh nouvelutilisateur@ip -p port
Installation et configuration du pare-feu UFW
UFW (Uncomplicated FireWall) est une interface pour simplifier la configuration des IP Tables afin de pouvoir gérer facilement notre pare-feu pour les connexions entrantes et sortantes autorisées.
Théoriquement UFW est déjà installé sur le serveur Ubuntu mais pas activé, pour en vérifier le status, on retourne sur l’utilisateur root :
su root
ufw status
Si la commande retourne une erreur, on pourra installer UFW via la commande :
apt install ufw
Avant d’activer UFW, il faut autoriser le port sur lequel nous avons reconfiguré notre connexion SSH. Par défaut ce port était 22, que j’ai reconfiguré en port 2021. En activant UFW sans faire cette modification, le risque est de ne plus pouvoir accéder à notre serveur via SSH…
ufw allow 2021/tcp
On peut désormais activer UFW
ufw enable
Et afficher la liste des connexion actuellement autorisées (uniquement notre port SSH sur TCP) :
ufw status verbose
Plus de détails sur UFW et les différentes commandes avec la documentation sur ubuntu-fr.org
Installation et configuration de Fail2ban
Fail2ban est une application qui permet de réduire le risque d’attaque en analysant les tentatives de connexion refusées et de bloquer les IP concernées selon les paramètres définis.
Les étapes qui suivent dans ce sous-paragraphe sont principalement inspirées de la documentation disponible (et plus détaillée) pour fail2ban sur ubuntu-fr.org
Il faut donc commencer par installer fail2ban et l’activer :
apt install fail2ban
systemctl start fail2ban
systemctl enable fail2ban
On peut en contrôler le status avec la commande :
systemctl status fail2ban
On va créer notre propre fichier conf :
nano /etc/fail2ban/jail.d/custom.conf
Dans lequel on va enregistrer la configuration suivante :
[DEFAULT]
ignoreip = 127.0.0.1 iplocale
findtime = 10m
bantime = 1h
maxretry = 5
[sshd]
enabled = true port = 2021 maxretry = 5
Le « ignoreip » permet de définir la liste d’ip à ne pas considérer, il peut être judicieux d’y ajouter sa propre ip pour éviter de s’auto bannir. Le « findtime » permet de définir la période d’analyse à prendre à compte. Le « bantime » détermine la durée de bannissement et finalement le « maxretry » définit le nombre de tentatives autorisées avant de bannir.
Particularité à configurer également puisque nous avons précédemment changé notre port SSH de 22 à 2021, il faut donc dans un premier temps activer fail2ban sur les connexions SSH et lui indiquer le port correspondant. On peut ensuite enregistrer et quitter le fichier conf. Et redémarrer notre fail2ban pour prendre en compte la nouvelle configuration.
systemctl restart fail2ban
Notre serveur VPS étant maintenant un minimum sécurisé, on peut passer à la partie Apache!
Installation de Apache
Apache est une application de serveur web qui va nous permettre la mise en ligne de nos site. On l’installera donc puis l’activera via ces commandes :
apt install apache2
systemctl enable apache2
Une fois mis en route, Apache va rendre disponible sur le port 80 (HTTP) les pages installées dans le dossier « /var/www/html/ » de notre serveur.
Or, actuellement, le port 80 est bloqué par UFW puisque nous avons uniquement autorisé le port 2021/tcp précécemment. Il va donc falloir autoriser le protocole http (port 80), et tant que nous y sommes, le protocole https (port 443) que nous utiliserons par la suite.
ufw allow http
ufw allow https
ufw reload
Maintenant, on peut tenter d’accéder à partir de notre navigateur web à notre serveur VPS en entrant directement son adresse IP.
Hello World
Dans Google Chrome (ou autre navigateur), on entre donc l’ip de notre serveur VPS:
Notre serveur est donc accessible sur le web et affiche la page par défaut fournie par l’installation d’Apache.
On peut modifier cette page facilement :
rm /var/www/html/index.html
nano /var/www/html/index.html
Ecrivons uniquement « Hello World » dans l’éditeur sans considérer aucune syntaxe HTML et enregistrons. Puis on rafraichi notre page sur Google Chrome et le changement est refleté.
Avant d’aller plus loin, modifions la configuration d’Apache pour plus de sécurité. Par défaut, lors des requêtes effectuées, Apache affiche des informations (version serveur, système exploitation) qui pourraient être utilisées à notre insu pour exploiter certaines failles, nous allons donc éviter cela :
nano /etc/apache2/apache2.conf
On ajoutera simplement les lignes suivantes à la fin du fichier :
ServerSignature Off
ServerTokens Prod
Puis on pourra redémarrer Apache pour prendre en compte ces modifications.
systemctl restart apache2
Installation de PHP
Passons désormais à l’installation de PHP sur notre serveur VPS si l’on veut éviter de rester avec des pages web statiques et puisqu’il s’agit d’un pré-requis pour WordPress.
apt install libapache2-mod-php
Afin de tester l’installation, on va créer un fichier info.php dans notre répertoire Apache :
nano /var/www/html/info.php
Dans lequel on entrera uniquement :
<?php
phpinfo();
?>
Puis on fermera et on enregistrera, et l’on rédémarrera Apache :
systemctl restart apache2
Si l’installation de PHP a été correctement réalisé, en entrant notre adresse ip suivi de « /info.php » dans Google Chrome, les infos de notre PHP devraient s’afficher.
Installation de MYSQL
Dernier pré-requis pour WordPress: une base de donnée. Nous allons donc installer MYSQL sur notre serveur VPS.
apt install mysql-server
mysql_secure_installation
On suit alors les différentes étapes de configuration basique de MYSQL en répondant « Yes » à toutes les questions (ou selon la configuration souhaitée, cela peut varier, à vous de voir) et on définit le mot de passe de notre user « root ».
On peut désormais tester que tout a bien fonctionné en se connectant à MYSQL :
mysql -u root -p
Toujours dans MYSQL, nous allons en profiter pour créer un nouvel utilisateur que nous utiliserons par la suite.
CREATE USER 'utilisateur'@'localhost' IDENTIFIED BY 'motdepasse';
Pour prendre les devants pour l’installation de WordPress à suivre, nous allons également créer une base de données et en attribuer les droits à notre nouvel utilisateur :
CREATE DATABASE wp_database;
GRANT ALL ON `wp_database`.* TO `utilisateur`@`localhost`;
FLUSH PRIVILEGES;
On va ensuite vérifier que l’utilisateur a bien été créé et que nous pouvons nous connecter :
exit
mysql -u utilisateur -p
On devrait maintenant se pouvoir connecter sans problème avec ce nouvel utilisateur en utilisant le mot de passe défini.
Nous pouvons désormais quitter MYSQL et nous attaquer à l’installation de WordPress!
exit
Installation de WordPress
Après avoir mis en place Apache, PHP et MYSQL sur notre serveur, nous sommes maintenant enfin prêt à installer WordPress, on commence donc par télécharger la dernière version disponible :
wget https://wordpress.org/latest.tar.gz
Le fichier sera téléchargé sur le répertoire courant, on peut alors en extraire le contenu :
tar xpf latest.tar.gz
Le dossier « wordpress » est extrait dans le répertoire courant. Poursuivons en supprimant l’ensemble des fichiers utilisés précédement lors de la mise en route d’Apache, dans notre répertoire « /var/www/html/ » :
rm /var/www/html/*
Ainsi nous pouvons copier et renommer par la même occasion notre dossier WordPress dans ce répertoire, ce qui nous permettra d’accéder à WordPress via Google Chrome (ou autre navigateur) en entrant l’IP de notre serveur et d’en commencer la configuration :
cp -r wordpress /var/www/html/site1
Pour finir on va changer les droits définis pour les fichiers et dossiers de ce répertoire :
chown -R www-data:www-data /var/www/html/site1/
chmod -R 755 /var/www/html/site1/
Nous sommes prêt à lancer la configuration de WordPress en y accédant via le navigateur (ou presque!). On entre donc dans Google Chrome (ou autre) l’IP de notre serveur et le nom du répertoire WordPress
http://IP/site1/
Et:
« Your PHP installation appears to be missing the MySQL extension which is required by WordPress.«
Il manque effectivement quelques composants nécessaires à WordPress que nous n’avons pas encore installé, on va donc rapidement résoudre ce problème en installant sur notre VPS un ensemble de composants pour PHP :
apt install php-cli php-common php-mbstring php-gd php-intl php-xml php-mysql php-zip php-curl php-xmlrpc
Puis on redémarre Apache :
systemctl restart apache2
Et l’on retourne sur notre navigateur pour rafraichir la page :
On peut donc commencer l’installation de notre WordPress en choisissant le langage, puis on arrive à l’étape de configuration de la base de données, dans laquelle nous devons renseigner les informations telles que définies précédemment en installant MYSQL:
On poursuit à l’étape suivante et voilà:
On « Run the installation » pour arriver à la dernière étape de configuration du site WordPress et de création de notre compte administrateur.
Ca y est, notre site WordPress est finalement installé!
On peut y accéder directment dans notre navigateur en entrant « http://IP/site1″:
Pour le reste, on peut le configurer et le personnaliser comme bon nous semble et commencer à publier du contenu.
Maintenant on ne souhaite pas vraiment pouvoir y accéder uniquement par l’adresse IP, il vaut mieux utiliser un nom de domaine qui nous redirige directement sur cette page, c’est ce que nous allons voir dans la section suivante.
Aussi, nous avons créé un sous-répertoire « site1 » pour y installer WordPress plutôt que directement sur la racine « /var/www/html » – ceci ayant pour but de nous préparer à notre configuration multisite à suivre avec la configuration des Virtual Hosts Apache.
Achat d’un nom de domaine et création de sous-domaines
Nous devons disposer d’un nom de domaine pour l’étape suivante, pour l’illustration j’utilise de nouveau OVH puisque mes services sont regroupés chez eux: Achat Nom de domaine OVH
Je dispose déjà d’un nom de domaine que j’utiliserai ici pour illustrer les différentes étapes. Je ne vais donc pas détailler les différentes étapes de l’achat mais directement passer sur l’Espace Client dans la section dédiée à mon nom de domaine. C’est là où nous allons débuter notre configuration pour rediriger simplement notre nom de domaine vers notre serveur VPS.
Dans la section Zone DNS de notre Espace Client OVH, nous allons donc filter sur le Type A et modifier les entrées existantes pour remplacer par l’IP de notre serveur VPS (si aucune entrée n’existe il faudra alors la créer).
Dans les illustrations ci-dessous je modifie l’entrée DNS pour « guillaumelemoine.eu » et je créé une entrée DNS pour « www.guillaumelemoine.eu » en indiquant « Type A » et renseignant l’IP de mon serveur VPS.
Ceci étant fait, nous pouvons désormais rentrer l’adresse de notre domaine dans notre navigateur, ce qui nous redirigera directement vers la racine de notre serveur VPS. En ajoutant « /site1 » derrière notre nom de domaine, alors nous serons redirigé directment vers notre site WordPress.
A noter par ailleurs que notre serveur reste toujours accessible via son adresse IP.
De la même façon que nous avons configuré notre Zone DNS pour « www » dans l’espace client OVH, nous pourrions déterminer une redirection « site1.domaine.com » vers notre serveur VPS, ce qui nous redirigerais vers notre répertoire racine, WordPress serait toujours accessible par « site1.domaine.com/site1 ».
L’objectif de la section suivante est la configuration de Virtual Host Apache qui nous permettra par exemple de diriger directement « site1.domaine.com » vers notre site WordPress ainsi que d’autres possibilités détaillées ci-dessous!
Configuration de Virtual Hosts Apache
Nous en sommes arrivé à pouvoir diriger un nom de domaine vers notre serveur VPS.
Maintenant, si l’on ne veut héberger qu’un seul site sur notre serveur, pas de problème, il suffit d’installer l’index de notre site sur la racine « /var/www/html » et d’y accéder directment par « domaine.com », « www.domaine.com » ou autre configuration DNS plutôt que dans un sous-répertoire « /var/www/html/site1 » et d’y accéder par « domaine.com/site1 » ou « www.domaine.com/site1 » ou autre.
En revanche, si nous voulons que notre serveur puisse accueillir :
site1.domaine.com
site2.domaine.com
domaine.com / www.domaine.com
autredomaine.com / www.autredomaine.com
Si nous redirigeons toutes les zones DNS de ces sites vers l’IP de notre serveur, chaque URL redirigera vers le répertoire racine « /var/www/html » et affichera la même page.
Sauf si nous définissons des règles sous Apache pour qu’en fonction de l’URL redirigée vers l’IP de notre serveur VPS, le site défini dans un sous-répertoire s’affiche, ainsi:
site1.domaine.com -> /var/www/html/site1
site2.domaine.com -> /var/www/html/site2
domaine.com / www.domaine.com -> /var/www/html/site-principal
autredomaine.com / www.autredomaine.com -> /var/www/html/mon-autre-site
Ce sont les Virtual Hosts Apache qui vont nous permettre cela.
Maintenant, à des fins illustratives, je vais uniquement détailler les étapes pour rediriger :
site1.domaine.com -> /var/www/html/site1
site2.domaine.com -> /var/www/html/site2
domaine.com / www.domaine.com -> /var/www/html/site-principal
Mais le principe reste le même pour un autre domaine.
Aussi, je ne vais pas installer 3 sites WordPress sur les 3 répertoires, mais uniquement garder le site WordPress de notre « Site1 » et afficher un simple HTML pour « Site2 » et « Site Principal » – Mais nous pourrions tout à fait répéter l’étape précédente de l’Installation WordPress pour chaque répertoire.
Configuration des Zone DNS additionnelle
Repartons quelques instants sur notre espace client OVH dans la section « Zone DNS » pour notre nom de domaine afin d’y ajouter les DNS Type A pour « site1.domaine.com » et site2.domaine.com » comme nous l’avons fait précédemment avec « www.domaine.com » vers l’IP de notre serveur VPS. Ceci étant fait, nous n’aurons plus besoin de retourner dans cette configuration.
Création des répertoires et de nos sous-sites
Maintenant, nous allons créer les sous-répertoires et pages à afficher pour chacun des sous-domaines que nous allons rédiriger. Positionnons nous directement dans le répertoire racine :
cd /var/www/html/
Puis créons un répertoire pour « Site2 » et un autre pour « Site-Principal »
mkdir site2
mkdir site-principal
Créons ensuite un fichier « index.html » qui affichera un texte différent pour chacun de nos sites. Ici simplement « Bonjour Site 2 » et « Notre Site Principal! »
nano site2/index.html
nano site-principal/index.html
Nous pouvons désormais nous attaquer à la configuration de nos Virtual Hosts Apache.
Configuration des Virtual Hosts
De base, l’installation d’Apache a généré un fichier « /etc/apache2/sites-available/000-default.conf » que nous allons utiliser et modifier pour répondre à nos besoins.
Initialement ce fichier contient la configuration :
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
</VirtualHost>
Nous allons créer une nouvelle version de ce fichier pour chacun de nos 3 sites :
cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/site1.conf
cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/site2.conf
cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/site-principal.conf
Et les modifier un à un pour définir le « DocumentRoot » pour chaque domaine/sous-domaine.
Commençons avec notre « Site1 »
nano /etc/apache2/sites-available/site1.conf
On va ajouter les lignes « ServerName » et « ServerAlias » et modifier le « DocumentRoot », on pourrait également modifier le « ServerAdmin » en indiquand notre mail.
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName guillaumelemoine.eu
ServerAlias site1.guillaumelemoine.eu
DocumentRoot /var/www/html/site1
</VirtualHost>
Cela signifie que lorsque l’on tentera d’accéder à « site1.domaine.com » Apache redirigera vers le répertoire « /var/www/html/site1 » dans lequel notre WordPress est installé.
On poursuit avec une configuration quasiment identique pour « Site 2 » :
nano /etc/apache2/sites-available/site2.conf
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName guillaumelemoine.eu
ServerAlias site2.guillaumelemoine.eu
DocumentRoot /var/www/html/site2
</VirtualHost>
Et finalement avec « Site principal » pour lequel nous définirons deux ServerAlias pour « domaine.com » et « www.domaine.com »
nano /etc/apache2/sites-available/site-principal.conf
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName guillaumelemoine.eu
ServerAlias guillaumelemoine.eu
ServerAlias www.guillaumelemoine.eu
DocumentRoot /var/www/html/site-principal
</VirtualHost>
Une fois nos 3 fichiers de configurations modifiés, il suffit des les activer et de redémarrer Apache.
Activation et test des Virtual Hosts
Activons un à un les fichiers conf :
a2ensite site1.conf
a2ensite site2.conf
a2ensite site-principal.conf
Et redémarrons Apache :
systemctl reload apache2
Maintenant tentons d’accéder à chaque domaine/sous-domaine via notre navigateur pour observer le résultat:
Comme attendu, chacun de nos domaine/sous-domaine nous redirige maintenant vers le répertoire souhaité.
Il reste un point en revanche, l’IP de notre serveur nous redirige toujours vers le répertoire racine « /var/www/html » nous allons donc faire en sorte de rediriger l’IP de notre VPS vers notre Site Principal avec le Rewrite Mod d’Apache.
Il faut dans un premier temps activer le mod_rewrite :
a2enmod rewrite
Ensuite nous allons modifier le fichier initial « /etc/apache2/sites-available/000-default.conf » pour y ajouter les règles que nous souhaitons appliquer :
nano /etc/apache2/sites-available/000-default.conf
Nous ne conserverons que ces lignes là, qui indiquent que pour l’IP de notre serveur, nous souhaitons rediriger de manière permanente les requêtes vers notre domaine.
Il nous reste à effectuer à nouveau un redémarrage d’Apache :
<VirtualHost *:80>
ServerAdmin webmaster@localhost
RewriteEngine on
RewriteCond %{SERVER_NAME} =51.195.220.27
RewriteRule ^ http://www.guillaumelemoine.eu%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>
systemctl reload apache2
Et désormais en entrant l’IP de notre serveur dans le navigateur, nous serons directement redirigé vers notre domaine.
Pour finir nous allons détailler comment utiliser le protocole HTTPS plutôt que HTTP afin d’éviter l’affichage d’une connexion non sécurisée :
Cela sera possible, et gratuitement, avec CertBot!
Génération de certificat SSL avec CertBot
Pour finir nous allons aborder la génération de certificat SSL avec CertBot, ce qui nous permettra d’accéder à nos sites via le protocol sécurisé HTTPS et éviter que nos sites apparaissent comme étant non sécurisés.
Pour cela, installons tout d’abord CertBot :
apt install snapd
snap install --classic certbot
Une fois installé, nous pouvons générer les certificats pour l’ensemble de nos sites :
certbot --apache -d guillaumelemoine.eu -d www.guillaumelemoine.eu -d site1.guillaumelemoine.eu -d site2.guillaumelemoine.eu
Une adresse mail nous est demandée, ainsi que d’accepter plusieurs conditions pour l’utilisation du service, et les certificats sont générés (ainsi que de nouveaux fichiers conf Apache destinés au SSL + redirection HTTP vers HTTPS).
On teste alors dans notre navigateur et:
Notre site est désormais sécurisé! Ainsi que l’ensemble des sous-domaines pour lesquels nous avons généré un certificat!
Plus sur CertBot: Documentation de CertBot (En Anglais)
Et voilà!
J’espère que ce guide vous a été utile – n’hésitez pas à partager vos remarques, corrections ou suggestions en me contactant