FRFAM.COM >> Famille >> Technologie &Innovation >> Informatique

Créez votre propre réseau social : guide complet pour installer une instance Mastodon sur Linux

Fatigué de Twitter ? Écoeuré par Facebook ? Les abus en ligne et le contenu NSFW vous rebutent ? Vous souhaitez échanger librement sur des sujets qui vous passionnent, à l'abri des trolls et des regards indiscrets ?

Mastodon est la réponse idéale. Open source et décentralisé, il vous permet de déployer votre propre instance pour des discussions sécurisées et confidentielles. Ce guide étape par étape, basé sur une expertise en administration serveur, vous accompagne pour une installation fiable sous Ubuntu Server (note : adapté d'Ubuntu 16.04 ; pour les versions récentes comme 22.04, consultez la documentation officielle).

Créez votre propre réseau social : guide complet pour installer une instance Mastodon sur Linux

Si Mastodon vous est inconnu : les "toots" équivalent aux tweets, mais avec 500 caractères max (contre 140 sur Twitter). Découvrez notre aperçu détaillé pour mieux comprendre.

Prérequis

Voici le matériel nécessaire :

  • Un serveur sous Ubuntu Server 16.04 (disponible à bas coût sur Vultr.com pour <10$/mois).
  • Un nom de domaine pointant vers l'IP du serveur (configurez les enregistrements DNS chez votre registrar).
  • Un compte Mailgun gratuit pour les inscriptions (vérifiez votre domaine).

Composants clés : Docker (virtualisation), Mastodon (réseau social), Nginx (proxy inverse pour la sécurité).

Accédez au serveur via SSH (terminal Linux/macOS ou PuTTY sous Windows).

Connexion SSH et installation de Docker

Connectez-vous en root/admin, créez l'utilisateur mastodon :

adduser mastodon
usermod -aG sudo mastodon
su - mastodon

Mettez à jour les paquets :

sudo apt-get update
sudo apt-get install apt-transport-https software-properties-common

Ajoutez la clé GPG Docker (note : méthode dépréciée ; préférez le script officiel pour les nouvelles installs) :

sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D

Ajoutez le dépôt et mettez à jour :

sudo add-apt-repository 'deb https://apt.dockerproject.org/repo ubuntu-xenial main'
sudo apt-get update

Vérifiez le dépôt Docker :

sudo apt-cache policy docker-engine

Installez Docker :

sudo apt-get install -y docker-engine

Vérifiez le service :

sudo systemctl status docker

Recherchez "active (running)".

Installation de Docker Compose

Ajoutez l'utilisateur au groupe docker :

sudo usermod -aG docker $(whoami)

Déconnectez-vous (exit) et reconnectez-vous.

Créez votre propre réseau social : guide complet pour installer une instance Mastodon sur Linux

Téléchargez la dernière version depuis GitHub (remplacez x.x.x) :

sudo curl -L "https://github.com/docker/compose/releases/download/x.x.x/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
docker-compose -v

Installation de Mastodon

cd /home/mastodon
git clone https://github.com/mastodon/mastodon.git
cd mastodon
cp .env.production.sample .env.production

Construisez l'image :

docker-compose build

Générez 3 clés secrètes :

docker-compose run --rm web rake secret

(Exécutez 3 fois, notez-les.) Éditez .env.production :

nano .env.production

Ajoutez les clés à PAPERCLIP_SECRET, SECRET_KEY_BASE, OTP_SECRET.

Créez votre propre réseau social : guide complet pour installer une instance Mastodon sur Linux

Configuration Mailgun

Dans Mailgun, récupérez SMTP_LOGIN et SMTP_PASSWORD. Éditez .env.production :

SMTP_FROM_ADDRESS=notifications@votredomaine.com
LOCAL_DOMAIN=votredomaine.com

docker-compose build
docker-compose run --rm web rails db:migrate
docker-compose run --rm web rails assets:precompile
docker-compose up -d

Configuration Nginx

Créez votre propre réseau social : guide complet pour installer une instance Mastodon sur Linux
sudo apt-get install nginx
sudo rm /etc/nginx/sites-available/default
sudo rm /etc/nginx/sites-enabled/default
sudo touch /etc/nginx/sites-available/mastodon
sudo ln -s /etc/nginx/sites-available/mastodon /etc/nginx/sites-enabled/mastodon
sudo nano /etc/nginx/sites-available/mastodon

Copiez la config Nginx depuis la doc Mastodon, remplacez example.com par votre domaine (sans www).

Créez votre propre réseau social : guide complet pour installer une instance Mastodon sur Linux

Certificat SSL et lancement

sudo add-apt-repository ppa:certbot/certbot
sudo apt-get update
sudo apt-get install certbot
sudo systemctl stop nginx
sudo certbot certonly --standalone -d votredomaine.com
cd /home/mastodon/mastodon
docker-compose down
docker-compose build
docker-compose run --rm web rails assets:precompile
docker-compose run --rm web rails db:migrate
docker-compose up -d
sudo systemctl restart nginx
Créez votre propre réseau social : guide complet pour installer une instance Mastodon sur Linux

Accédez à votre domaine. En cas d'erreur, vérifiez .env.production, DNS et Mailgun.

Automatisation et administration

cd /home/mastodon
nano mastodon_cron

Ajoutez :

cd /home/mastodon/mastodon && 
docker-compose run --rm web rake mastodon:media:clear && 
docker-compose run --rm web rake mastodon:push:refresh && 
docker-compose run --rm web rake mastodon:push:clear && 
docker-compose run --rm web rake mastodon:feeds:clear
chmod +x mastodon_cron
sudo crontab -e

Ajoutez : 0 0 * * * /home/mastodon/mastodon_cron > /home/mastodon/mastodon_log 2>&1

Renouvellement SSL automatique

sudo crontab -e

Ajoutez :

0 1 * * 1 /usr/bin/certbot renew >> /home/mastodon/letsencrypt.log 2>&1
5 1 * * 1 systemctl reload nginx

Administration

Créez un compte admin via l'interface, confirmez par email.

cd /home/mastodon/mastodon
docker-compose run --rm web rails "User.find_by(username: 'votreuser').update!(admin: true)"
Créez votre propre réseau social : guide complet pour installer une instance Mastodon sur Linux

Accédez aux Préférences > Administration pour gérer utilisateurs, site et paramètres.

Votre réseau social personnalisé

Twitter peine contre la cyberintimidation, Facebook sacrifie la vie privée. Mastodon offre une alternative décentralisée. Testez-le, puis lancez le vôtre !

Avez-vous installé votre instance Mastodon ? Partagez votre expérience en commentaires.

[]