Installation Etherpad · 11 min read · Nov 02, 2025

Comment installer Etherpad sur AlmaLinux 9

Etherpad est une alternative gratuite et open-source à des services comme Google Docs et Zoho Writer. Etherpad est un éditeur de texte collaboratif et en temps réel pour votre équipe, accessible de n’importe où et à tout moment car Etherpad est un éditeur de texte basé sur le web.

Tous les changements sur Etherpad se font en temps réel, et Etherpad prend également en charge la gestion des versions et le formatage intégré pour les équipes. Etherpad est un éditeur hautement personnalisable avec le support de divers plugins. Il prend également en charge des formats de documents modernes tels que doc, pdf, odt, markdown, etc.

Ce tutoriel vous montrera comment installer Etherpad sur un serveur AlmaLinux 9 avec un serveur de base de données MariaDB et un serveur web Nginx. Vous sécuriserez également Etherpad via des certificats SSL pour permettre un accès sécurisé.

Prérequis

Pour compléter ce tutoriel, assurez-vous d’avoir les éléments suivants :

  • Un serveur AlmaLinux 9 - Cette démo utilise un AlmaLinux avec le nom d’hôte almalinux9.
  • Un utilisateur non-root avec des privilèges sudo.
  • Un nom de domaine pointant vers l’adresse IP du serveur.
  • Des certificats SSL générés via Letsecnrypt et Certbot.

Installation des dépendances

Avant d’installer Etherpad, vous devez installer certaines des dépendances nécessaires à Etherpad, notamment :

  • Outils de développement
  • Node.js et NPM (Node Package Manager)
  • Serveur de base de données MariaDB
  • Serveur web Nginx

Complétez ces étapes pour installer les dépendances d’Etherpad.

Installation des outils de développement

Tout d’abord, vous devez installer “ Outils de développement “ sur votre serveur AlmaLinux. Entrez la commande dnf suivante pour installer “ Outils de développement “, saisissez y et appuyez sur ENTRER pour continuer.

sudo dnf group install "Development Tools"

Ensuite, exécutez la commande suivante pour installer quelques dépendances supplémentaires. Lorsque vous y êtes invité, saisissez y pour confirmer et appuyez sur ENTRER.

sudo dnf install gzip git curl python3-devel openssl-devel pkg-config

install dependencies

Installation de Node.js et NPM

Etherpad est un éditeur de collaboration et en temps réel basé sur le web principalement écrit avec Node.js. Pour l’installer, vous devez installer le runtime JavaScript Node.js et NPM (Node Package Manager).

Au moment de la rédaction de cet article, Etherpad nécessite au moins Node.js v16, qui est disponible par défaut dans le dépôt appstream d’AlmaLinux et vous pouvez l’installer via DNF.

Exécutez la commande dnf suivante pour installer Node.js et NPM. Saisissez y pour confirmer l’installation et appuyez sur ENTRER.

sudo dnf install nodejs npm

Une fois Node.js installé, exécutez la commande suivante pour ajouter le répertoire /usr/local/bin à la variable d’environnement PATH. Cela garantira que certains fichiers binaires installés via NPM peuvent être exécutés sur le serveur.

echo "export PATH=$PATH:/usr/local/bin" >> ~/.bashrc  
source ~/.bashrc

Ensuite, exécutez la commande suivante pour localiser les fichiers binaires de Node.js et NPM.

which node  
which npm

Puis, vérifiez la version de Node.js et NPM en utilisant la commande ci-dessous.

node --version  
npm --version

La sortie affichée confirme que Node.js v16 et NPM 8.x sont installés, et que les deux fichiers binaires se trouvent dans le répertoire /bin.

checking node.js and npm

Installation du serveur MariaDB

Par défaut, l’Etherpad installé utilise SQLite comme base de données. Vous pouvez utiliser MariaDB/MySQL comme base de données pour de grands déploiements de votre installation Etherpad.

Exécutez la commande dnf ci-dessous pour installer le serveur MariaDB. Lorsque vous y êtes invité, saisissez y pour confirmer et appuyez sur ENTRER.

sudo dnf install mariadb-server

install mariadb

Une fois MariaDB installé, exécutez la commande suivante pour démarrer et activer le service MariaDB.

sudo systemctl start mariadb  
sudo systemctl enable mariadb

Ensuite, vérifiez l’état du service MariaDB en utilisant la commande ci-dessous.

sudo systemctl status mariadb

Si le serveur MariaDB fonctionne, la sortie devrait s’afficher comme ceci :

start enable mariadb

Installation du serveur web Nginx

Après avoir installé le serveur MariaDB, vous allez installer le serveur web Nginx qui sera utilisé comme proxy inverse pour Etherpad. Donc, avant d’aller plus loin, assurez-vous d’avoir un nom de domaine pointant vers l’adresse IP de votre serveur et des certificats SSL générés via Letsencrypt et Certbot.

Exécutez la commande dnf ci-dessous pour installer le serveur web Nginx. Lorsque vous y êtes invité, saisissez pour confirmer et appuyez sur ENTRER.

sudo dnf install nginx

install nginx

Maintenant, exécutez la commande suivante pour démarrer et activer le service Nginx.

sudo systemctl start nginx  
sudo systemctl enable nginx

Après cela, entrez la commande suivante pour vérifier le service Nginx et vous assurer que le service fonctionne.

sudo systemctl status nginx

Si le service Nginx fonctionne, vous devriez obtenir une sortie comme ceci :

start enable verify nginx

Ensuite, exécutez la commande suivante pour ouvrir les ports HTTP et HTTPS sur votre serveur.

sudo firewall-cmd --add-service={http,https} --permanent  
sudo firewall-cmd --reload

Vérifiez la liste des ports et services ouverts en utilisant la commande suivante. Vous devriez voir que HTTP et HTTPS sont activés sur firewalld.

sudo firewall-cmd --list-all

configure firewalld

Configuration du serveur MariaDB

Dans cette section, vous allez sécuriser le serveur MariaDB avec l’utilitaire mariadb-secure-installation, puis créer une nouvelle base de données et un utilisateur qui seront utilisés pour Etherpad.

Exécutez la commande suivante pour commencer à sécuriser le serveur MariaDB.

sudo mariadb-secure-installation

Après l’exécution de la commande, vous serez interrogé sur les configurations suivantes :

  • Changer la méthode d’authentification pour l’utilisateur root de MariaDB en unix_socket. Saisissez n pour Non.
    Configurer le mot de passe root de MariaDB. Saisissez y pour confirmer et tapez le nouveau mot de passe root de MariaDB et répétez.
    Désactiver la connexion à distance pour l’utilisateur root de MariaDB. Saisissez y pour confirmer.
    Supprimer la base de données par défaut test de MariaDB. Saisissez y pour confirmer.
    Supprimer l’utilisateur anonyme de MariaDB. Saisissez y pour confirmer.
    Enfin, saisissez y à nouveau pour recharger les privilèges des tables afin d’appliquer les modifications.

Avec le serveur MariaDB sécurisé, vous allez maintenant créer une nouvelle base de données MariaDB et un utilisateur.

Connectez-vous au serveur MariaDB en utilisant la commande mariadb ci-dessous.

sudo mariadb -u root -p

Exécutez les requêtes suivantes pour créer une nouvelle base de données MariaDB et un utilisateur pour Etherpad. Dans cet exemple, vous allez créer une nouvelle base de données etherpad_lite_db et l’utilisateur etherpaduser avec le mot de passe StrongPasswordEtherpadDB.

CREATE DATABASE etherpad_lite_db CHARACTER SET utf8mb4;  
CREATE USER etherpaduser@localhost IDENTIFIED BY 'StrongPasswordEtherpadDB';  
GRANT CREATE,ALTER,SELECT,INSERT,UPDATE,DELETE on etherpad_lite_db.* to etherpaduser@localhost;  
FLUSH PRIVILEGES;

create new database and user

Maintenant, exécutez la requête suivante pour vérifier les privilèges de l’utilisateur MariaDB etherpaduser.

SHOW GRANTS FOR etherpaduser@localhost;  
quit

Vous remarquerez que l’utilisateur MariaDB etherpaduser a des privilèges pour accéder à la base de données etherpad_lite_db.

show mariadb user privileges

Tapez quit pour quitter MariaDB.

Téléchargement et installation d’Etherpad

Dans cette section, vous allez commencer l’installation d’Etherpad en créant l’utilisateur système, en téléchargeant le code source d’Etherpad, en installant les dépendances pour Etherpad, en intégrant Etherpad avec la base de données MariaDB, puis en vérifiant l’installation en l’exécutant via la ligne de commande.

Tout d’abord, exécutez la commande suivante pour créer un nouvel utilisateur système et un groupe ‘ etherpad ‘. Cet utilisateur sera utilisé pour exécuter le service Etherpad.

sudo groupadd etherpad  
sudo adduser -r -M -d /opt/etherpad-lite -g etherpad etherpad

Téléchargez le code source d’Etherpad via git dans le répertoire cible /opt/etherpad-lite.

git clone --branch master https://github.com/ether/etherpad-lite.git /opt/etherpad-lite

Une fois le code source d’Etherpad téléchargé, exécutez la commande suivante pour changer la propriété du répertoire /opt/etherpad-lite à l’utilisateur et au groupe ‘ etherpad ‘.

sudo chown -R etherpad:etherpad /opt/etherpad-lite

create user and download etherpad source code

Ensuite, déplacez le répertoire de travail vers le répertoire /opt/etherpad-lite et installez les dépendances d’Etherpad en utilisant la commande ci-dessous.

cd /opt/etherpad-lite  
sudo su -s /bin/bash -c "./bin/installDeps.sh" etherpad

Après l’exécution de la commande, vous devriez obtenir le processus d’installation comme ceci :

install etherpad dependencies

Lorsque l’installation est terminée, ouvrez la configuration d’Etherpad settings.json en utilisant la commande de l’éditeur nano suivante.

nano settings.json

Changez le titre de votre installation Etherpad.

  "title": "Etherpad AlmaLinux 9",

Changez l’adresse IP par défaut pour qu’Etherpad fonctionne sur localhost ou 127.0.0.1.

  "ip": "127.0.0.1",  
  "port": 9001,

Supprimez la configuration de base de données par défaut ci-dessous.

  /*  
  *"dbType": "dirty",  
  *"dbSettings": {  
  *  "filename": "var/dirty.db"  
  *},  
  */

Changez les détails de la base de données pour utiliser le serveur MySQL/MariaDB comme ceci. Et assurez-vous de changer le nom de la base de données, l’utilisateur et le mot de passe.

  "dbType" : "mysql",  
  "dbSettings" : {  
    "user":     "etherpaduser",  
    "host":     "localhost",  
    "port":     3306,  
    "password": "StrongPasswordEtherpadDB",  
    "database": "etherpad_lite_db",  
    "charset":  "utf8mb4"  
  },

Enregistrez le fichier et quittez l’éditeur lorsque vous avez terminé.

Ensuite, exécutez la commande suivante pour vérifier et exécuter Etherpad.

/bin/node --experimental-worker /opt/etherpad-lite/node_modules/ep_etherpad-lite/node/server.js

Si la configuration de la base de données et l’installation d’Etherpad sont réussies, la sortie suivante sera affichée :

running check etherpad

Appuyez sur Ctrl+c pour terminer le processus.

Exécution d’Etherpad en tant que service Systemd

Avec Etherpad installé, vous allez maintenant configurer Etherpad en tant que service systemd. Cela vous permet d’exécuter Etherpad en arrière-plan et de gérer facilement Etherpad via la ligne de commande systemctl.

Pour commencer, créez un nouveau fichier de service systemd /lib/systemd/system/etherpad.service en utilisant la commande de l’éditeur nano suivante.

sudo nano /lib/systemd/system/etherpad.service

Insérez la configuration suivante dans le fichier.

[Unit]  
Description=Etherpad-lite, l'éditeur collaboratif.  
After=syslog.target network.target mariadb.service nginx.service  
  
[Service]  
Type=simple  
User=etherpad  
Group=etherpad  
WorkingDirectory=/opt/etherpad-lite  
Environment=NODE_ENV=production  
ExecStart=/bin/node --experimental-worker /opt/etherpad-lite/node_modules/ep_etherpad-lite/node/server.js  
# utilisez mysql plus un settings.json complet pour éviter le temps d'attente du service, planifiant le redémarrage.  
Restart=always  
  
[Install]  
WantedBy=multi-user.target

Enregistrez et fermez le fichier lorsque vous avez terminé.

Maintenant, exécutez la commande suivante pour recharger le gestionnaire systemd et appliquer le fichier de service Etherpad à votre système.

sudo systemctl daemon-reload

Ensuite, démarrez et activez le service Etherpad en utilisant la commande ci-dessous.

sudo systemctl start etherpad  
sudo systemctl enable etherpad

Vérifiez le service Etherpad en utilisant la commande suivante. Si le service Etherpad fonctionne, vous devriez obtenir une sortie telle que ‘ active (running) ‘.

sudo systemctl status etherpad

verify etherpad service

Vous pouvez également vérifier la liste des ports ouverts sur votre système en utilisant la commande suivante. Et vous devriez voir qu’Etherpad utilise le port 9001.

ss -tulpn | grep 9001

Configuration de Nginx en tant que proxy inverse

À ce stade, Etherpad est opérationnel sur le port 9001. Pour le rendre accessible aux utilisateurs finaux, vous pouvez utiliser Nginx qui sera utilisé comme proxy inverse. Avant de commencer, assurez-vous d’avoir le nom de domaine qui sera utilisé pour Etherpad, et assurez-vous d’avoir généré des certificats SSL via Letsencrypt et Certbot.

Créez une nouvelle configuration de bloc serveur Nginx /etc/nginx/conf.d/etherpad.conf en utilisant la commande de l’éditeur nano ci-dessous.

sudo nano /etc/nginx/conf.d/etherpad.conf

Insérez la configuration suivante et assurez-vous de changer les détails du nom de domaine et le chemin des certificats SSL.

# forcer HTTPS  
server {  
    listen       80;  
    server_name  etherpad.howtoforge.local;  
    return 301   https://$host$request_uri;  
}  
  
# nous sommes dans le contexte http ici  
map $http_upgrade $connection_upgrade {  
    default upgrade;  
    ''      close;  
}  
  
server {  
    listen       443 ssl http2;  
    server_name  etherpad.howtoforge.local;  
  
    access_log  /var/log/nginx/eplite.access.log;  
    error_log   /var/log/nginx/eplite.error.log;  
  
    ssl_certificate      /etc/letsencrypt/live/etherpad.howtoforge.local/fullchain.pem;  
    ssl_certificate_key  /etc/letsencrypt/live/etherpad.howtoforge.local/privkey.pem;  
  
    ssl_session_timeout  5m;  
  
    ssl_protocols TLSv1.2;  
    ssl_prefer_server_ciphers on;  
    ssl_ciphers "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS";  
  
    location / {  
        proxy_pass         http://127.0.0.1:9001;  
        proxy_buffering    off; # attention, cette ligne ne remplace pas le proxy_buffering défini dans un conf.d/file.conf  
        proxy_set_header   Host $host;  
        proxy_pass_header  Server;  
  
        # Notez que vous voudrez peut-être également passer ces en-têtes etc.  
        proxy_set_header    X-Real-IP $remote_addr; # https://nginx.org/en/docs/http/ngx_http_proxy_module.html  
        proxy_set_header    X-Forwarded-For $remote_addr; # EP logs pour montrer l'adresse IP distante réelle  
        proxy_set_header    X-Forwarded-Proto $scheme; # pour EP pour définir le drapeau de cookie sécurisé lorsque https est utilisé  
        proxy_http_version  1.1; # recommandé avec des connexions keepalive  
  
        # Proxy WebSocket - de https://nginx.org/en/docs/http/websocket.html  
        proxy_set_header  Upgrade $http_upgrade;  
        proxy_set_header  Connection $connection_upgrade;  
    }  
}

Enregistrez le fichier et fermez l’éditeur lorsque vous avez terminé.

Maintenant, exécutez la commande suivante pour vous assurer que vous avez la configuration correcte et appropriée. Si cela réussit, vous devriez obtenir un message tel que “ La syntaxe est correcte - le test est réussi “.

sudo nginx -t

Ensuite, entrez la commande suivante pour redémarrer le service Nginx et appliquer les modifications.

sudo systemctl restart nginx

configure nginx as reverse proxy

Après cela, lancez votre navigateur web et visitez le nom de domaine de l’installation d’Etherpad (c’est-à-dire : https://etherpad.howtoforge.local/). Vous devriez voir la page d’accueil par défaut de votre éditeur collaboratif Etherpad.

Maintenant, créez un nouveau pad en tapant le nom du pad et cliquez sur OK.

create new pad

Vous pouvez maintenant commencer à utiliser Etherpad en tant qu’éditeur collaboratif.

etehrpad collaboratuive editor

Conclusion

Félicitations, vous avez terminé l’installation d’Etherpad avec le serveur de base de données MariaDB et le serveur web Nginx sur un serveur AlmaLinux 9. Vous avez également sécurisé Etherpad avec des certificats SSL en plus de cela. Vous pouvez maintenant commencer à utiliser Etherpad comme principal éditeur collaboratif avec vos amis/groupes/équipe.

Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.