Comment Installer Votre Propre Twitter Fédéré avec Pleroma

Pleroma Twitter Featured

Le microblogging est une merveilleuse façon d’exprimer vos pensées. C’est court, succinct et agréable. À cet égard, Twitter a été l’une des plateformes de microblogging les plus populaires au monde. Cependant, compter sur cette entreprise particulière pour vos besoins de microblogging peut ne pas être la meilleure solution pour tout le monde.

Heureusement, il existe des alternatives comme Pleroma qui est un Twitter auto-hébergé. C’est une plateforme de microblogging fédérée légère. L’utilisation de la fédération permet à la plateforme de communiquer avec d’autres instances fédérées, ce qui signifie que vous n’avez pas besoin de rassembler beaucoup de personnes pour votre propre Twitter privé afin de commencer à partager des informations. Cet article vise à vous aider à démarrer avec Pleroma.

Table des Matières

  • Le Problème avec Twitter
  • Qu’est-ce que la Fédération et Comment Cela Fonctionne
  • Comment Installer Pleroma
    1. Configurer Vos Enregistrements DNS A et AAAA
    1. Obtenir les Dépendances de Pleroma
    1. Créer l’Utilisateur Pleroma
    1. Télécharger Pleroma
    1. Préparer et Installer Pleroma
    1. Configurer l’Installation de Pleroma
    1. Configurations Spécifiques aux Médias
    1. Finaliser Votre Configuration Pleroma
    1. Démarrer la Base de Données Pleroma
    1. Démarrer Votre Serveur Pleroma
    1. Configurations Finales
  • Questions Fréquemment Posées

Lisez aussi : Les 7 Meilleures Distros Basées sur Debian à Essayer Si Vous Voulez une Alternative à Ubuntu

Le Problème avec Twitter

Twitter est connu pour bannir aléatoirement des comptes pour des infractions vagues aux politiques. Si vous êtes quelqu’un qui a accumulé des années de publications sur Twitter, perdre cet historique peut être dévastateur. Non seulement cela, mais Twitter est également connu pour remettre des données utilisateur à la fois aux annonceurs et aux agences gouvernementales.

Cela rend Twitter une plateforme peu sûre pour les personnes qui souhaitent avoir un contrôle total sur leurs données ou pour les journalistes qui rapportent des sujets controversés.

Qu’est-ce que la Fédération et Comment Cela Fonctionne

Une solution à ce problème est de construire un réseau social par le biais de la fédération de serveurs. C’est un système où vous permettez à plusieurs serveurs exécutant un logiciel similaire de communiquer entre eux de manière transparente.

De ce fait, tout serveur fédéré peut agir comme un nœud pour l’ensemble du réseau où vous pouvez accéder et participer avec d’autres serveurs.

Pleroma Server 03 Federated Network

Cela crée à son tour un écosystème résilient capable de s’adapter facilement à n’importe quelle circonstance. Par exemple, si un serveur Pleroma tombe en panne, cela ne mettrait pas fin au réseau fédéré Pleroma. Cela pourrait réduire le nombre de publications au sein du réseau, mais d’autres serveurs pourront toujours communiquer entre eux.

Lisez aussi : Comment Installer Debian via Internet

Comment Installer Pleroma

Pleroma nécessite un certain nombre de choses avant que vous puissiez commencer à le configurer :

  • Tout d’abord, vous devez avoir une machine publiquement découvrable. Cela pourrait être une machine chez vous que vous pouvez rediriger ou un VPS que vous avez acheté auprès d’un fournisseur.
  • De plus, si vous utilisez un VPS pour installer Pleroma, vous devez avoir un accès root à ce VPS. Cela est dû au fait que vous allez installer des paquets dont Pleroma a besoin pour fonctionner correctement.
  • Enfin, vous devez avoir un nom de domaine. Cela est nécessaire car certbot, l’utilitaire de certificat SSL, nécessitera un nom de domaine pour générer un certificat pour votre instance Pleroma.

Avec cela en tête, ce guide se concentrera sur l’installation de Pleroma sur un VPS basé sur Debian de Digitalocean.

1. Configurer Vos Enregistrements DNS A et AAAA

Avant de commencer, il est sage de lier d’abord votre nom de domaine à l’adresse IP de votre VPS.

Pleroma Server 05 Sample Dns Record

Cela garantit que toute commande qui fait référence à votre nom de domaine ci-dessous se résoudra correctement. Cela devient particulièrement utile une fois que vous configurez vos certificats SSL plus tard.

  1. Pour lier votre nom de domaine à l’adresse IP de votre VPS, vous devez modifier l’enregistrement DNS de votre nom de domaine. Bien que vous puissiez utiliser un service d’enregistrement de domaine différent du mien, le processus de liaison de votre nom de domaine à l’adresse de votre VPS est largement le même.
  2. Dans mon cas, j’ai lié mon nom de domaine : yetanotherpleromaserver.xyz à mon VPS Digitalocean via Namesilo. Pour ce faire, j’ai d’abord accédé à la fenêtre de gestion de domaine de Namesilo.

Pleroma Server 06 Domain Manager

  1. À partir de là, vous devez cliquer sur le nom de domaine. Cela fait apparaître les paramètres pour ce domaine spécifique.
  2. Ensuite, cliquez sur le lien “DNS Records”. Cela affichera tous les enregistrements DNS disponibles pour votre nom de domaine.

Pleroma Server 38 Dns Records 2

  1. Une fois terminé, j’ai ajouté une ressource “A” à mon enregistrement DNS en cliquant sur le lien “A” dans la boîte “Add/Edit a Resource Record” sur la page d’enregistrement de Namesilo.

Pleroma Server 08 Highlight A Record

  1. À partir de là, la seule chose que je devais faire était d’ajouter l’adresse IPv4 de mon VPS Digitalocean.

Pleroma Server 09 Added A Record

  1. Le processus d’ajout d’un enregistrement “AAAA” est également le même. Cependant, au lieu de cliquer sur le lien “A”, je vais cliquer sur le lien “AAAA”. De plus, au lieu d’ajouter l’adresse IPv4, j’ajouterai l’adresse IPv6.

Pleroma Server 10 Added Aaaa Record

Lisez aussi : 5 Meilleures Distributions Linux-Libre pour une Meilleure Sécurité

2. Obtenir les Dépendances de Pleroma

La prochaine chose que vous devez faire est de télécharger tous les paquets dont Pleroma a besoin. Comme discuté ci-dessus, je vais seulement mettre en avant le processus d’installation pour les distributions Linux basées sur Debian et Ubuntu. Ainsi, je vais utiliser apt pour installer tous les paquets requis.

Avec cela en tête, Pleroma dépend de trois programmes principaux : postgresql, elixir et erlang. Par conséquent, vous devez installer ces programmes ainsi que quelques autres qui compléteront ces trois dans leur travail.

Pour ce faire, vous pouvez exécuter la commande suivante :

sudo apt install git build-essential postgresql postgresql-contrib cmake libmagic-dev elixir erlang-dev erlang-nox nginx certbot

Pleroma Server 11 Installing Packages

3. Créer l’Utilisateur Pleroma

Une fois cela fait, la prochaine chose que vous devez faire est de créer le compte utilisateur “pleroma”. C’est le compte que vous utiliserez pour télécharger et installer le paquet Pleroma. Faire cela de cette manière garantit que le programme Pleroma n’aura pas d’accès superutilisateur à votre système.

Pour ce faire, vous pouvez exécuter la commande suivante :

sudo useradd -r -s /bin/false -m -d /var/lib/pleroma -U pleroma
  • L’option -r définira l’utilisateur “pleroma” comme un compte système plutôt qu’un compte utilisateur.
  • De plus, l’option -s définira le shell de connexion pour cet utilisateur sur “false”. Cela garantit que l’utilisateur pleroma, par lui-même, ne peut pas exécuter de commande depuis un shell.
  • D’autre part, les options -m et -d définissent le répertoire personnel pour l’utilisateur “pleroma”. L’option -m définit explicitement le compte pour avoir un répertoire personnel et l’option -d définit ce répertoire pour pointer vers “/var/lib/pleroma”.
  • Enfin, l’option -U crée un groupe d’utilisateurs du même nom et ajoute le nouvel utilisateur Pleroma à ce groupe.

Pleroma Server 12 Add Pleroma User

4. Télécharger Pleroma

À partir de là, vous pouvez maintenant télécharger le paquet Pleroma depuis leurs dépôts. Pour ce faire, vous devez d’abord créer le répertoire où les fichiers seront téléchargés :

sudo mkdir -p /opt/pleroma  
sudo chown -R pleroma:pleroma /opt/pleroma
  • La première commande créera le répertoire “pleroma” où vous téléchargerez tous les fichiers pour le programme.
  • La deuxième commande, quant à elle, transférera la propriété de ce dossier de root à pleroma. Cela permettra alors à pleroma de lire et d’écrire dans ce dossier sans aucun problème.

Pleroma Server 13 Create Directory

Une fois terminé, la prochaine chose à faire est de télécharger le code source de Pleroma lui-même. Pour ce faire, vous devez utiliser git :

sudo -Hu pleroma git clone -b stable https://git.pleroma.social/pleroma/pleroma /opt/pleroma

Pleroma Server 14 Git Clone

5. Préparer et Installer Pleroma

Vous pouvez maintenant vous rendre dans le répertoire /opt/pleroma pour commencer le processus d’installation du programme :

cd /opt/pleroma

À partir de là, vous devez exécuter le programme Mix pour tirer toutes les dépendances supplémentaires pour Pleroma. Pour ce faire, vous pouvez exécuter la commande suivante :

sudo -Hu pleroma mix deps.get

Pleroma Server 15 Get Deps

Une fois terminé, vous pouvez maintenant procéder à la compilation et à l’installation de Pleroma. Pour cela, vous n’avez qu’à exécuter une commande :

sudo -Hu pleroma MIX_ENV=prod mix pleroma.instance gen

Cette commande fera trois choses :

  • Tout d’abord, l’option MIX_ENV=prod définira la variable d’environnement du programme pour cibler une configuration de production. Cela signifie que le programme ne contiendra aucun outil et fichier de développement.
  • L’option gen créera un fichier de configuration qui cible la variable d’environnement que vous avez fournie.
  • Enfin, cette commande compilera et installera également Pleroma à partir de son code source. En raison de cela, ce processus prendra un certain temps en fonction du matériel sur lequel vous l’exécutez.

Pleroma Server 16 Install And Compile Pleroma

Lisez aussi : Comment Réparer la Boucle de Connexion Ubuntu

6. Configurer l’Installation de Pleroma

Une fois que Pleroma a terminé de se compiler, il vous demandera quelques informations sur votre serveur.

  1. Tout d’abord, il aura besoin du nom de domaine que vous souhaitez utiliser pour le programme. Dans mon cas, j’ai utilisé mon nom de domaine : “yetanotherpleromaserver.xyz”.

Pleroma Server 17 Domain Name Config

  1. À partir de là, le script de configuration vous demandera le nom que vous souhaitez pour votre serveur Pleroma. Dans mon cas, j’ai utilisé le même nom : “Yet Another Pleroma Server” pour mon serveur.

Pleroma Server 18 Server Name

  1. Ensuite, saisissez votre adresse e-mail d’administrateur. Cela devrait être un e-mail valide qui peut recevoir et envoyer des e-mails.

Pleroma Server 19 Admin Email

  1. Maintenant, sélectionnez si vous souhaitez que votre instance Pleroma soit indexable par les moteurs de recherche. Cela est utile si vous souhaitez créer une instance Pleroma publique à laquelle d’autres personnes peuvent se joindre et se connecter. Dans mon cas, je voulais que ce serveur soit privé, donc j’ai sélectionné “n”.

Pleroma Server 21 Search Engine Indexing

  1. Après cela, le script vous demandera si vous souhaitez enregistrer votre configuration dans un fichier de base de données. Pour la plupart, vous voudrez sélectionner “oui” ici et choisir les options par défaut qu’il vous demandera.

Pleroma Server 22 Local Database

  1. Enfin, le script vous demandera d’ajouter quelques détails sur quel port et quelle adresse écouter. Si vous installez Pleroma sur la même machine que celle sur laquelle vous le configurez, il est sûr de laisser les valeurs par défaut ici.

7. Configurations Spécifiques aux Médias

  1. Maintenant, le script de configuration vous demandera de sélectionner où vous souhaitez enregistrer les fichiers multimédias qui seront téléchargés sur le serveur. Comme pour les paramètres ci-dessus, il est sûr de laisser ceux-ci sur les valeurs par défaut.

  2. Ensuite, décidez si vous souhaitez supprimer toute géolocalisation des données EXIF des photos que vous recevrez. Cela est utile si vous souhaitez préserver la vie privée de l’uploader. Comme je vais utiliser cela uniquement comme une instance privée, j’ai sélectionné “non” ici.

  3. De plus, vous devrez décider si vous souhaitez anonymiser les noms de fichiers des téléchargements. Cela est particulièrement utile si vous souhaitez supprimer toute association avec l’uploader et ce qu’il a téléchargé. Dans mon cas, j’ai également sélectionné “non” ici.

  4. Enfin, le script de configuration vous laissera choisir si vous souhaitez créer plusieurs copies des fichiers qui sont téléchargés sur votre serveur. Dans mon cas, j’ai sélectionné “non”.

8. Finaliser Votre Configuration Pleroma

  1. Vous pouvez maintenant consulter votre fichier de configuration. Il se trouve dans “/opt/pleroma/config/generated_config.exs”. Vous pouvez utiliser less pour le visualiser :
less /opt/pleroma/config/generated_config.exs
  1. Pour finaliser cette configuration, vous devez renommer ce fichier en “prod.secret.exs”. Vous pouvez le faire en exécutant la commande suivante :
sudo -Hu pleroma mv config/{generated_config.exs,prod.secret.exs}

Pleroma Server 28 Config Folder

Lisez aussi : Qu’est-ce que le Réseau Yggdrasil et Comment l’Installer

9. Démarrer la Base de Données Pleroma

  1. La prochaine chose que vous devez faire est de démarrer le programme de base de données. Pour ce faire, vous pouvez utiliser la base de données que Pleroma a fournie. Vous pouvez charger cette base de données en exécutant la commande suivante :
sudo -Hu postgres psql -f /opt/pleroma/config/setup_db.psql

Pleroma Server 29 Import Database

  1. À partir de là, vous pouvez maintenant lier postgres et Pleroma en migrant la base de données postgres vers Pleroma. Pour ce faire, vous pouvez exécuter la commande suivante :
sudo -Hu pleroma MIX_ENV=prod mix ecto.migrate

Pleroma Server 30 Migrate Database

10. Démarrer Votre Serveur Pleroma

Maintenant, il est temps de faire fonctionner votre serveur Pleroma. Vous pouvez le faire en exécutant la commande suivante :

sudo -Hu pleroma MIX_ENV=prod mix phx.server

Pleroma Server 31 First Run

Cependant, ce serveur est encore inaccessible depuis le navigateur classique. Pour permettre cela, vous devez d’abord configurer certbot et nginx.

Lisez aussi : 9 des Meilleurs Clients Email pour Linux

Configurer Certbot pour Pleroma

  1. La configuration de certbot est relativement simple. Tout d’abord, vous devez créer le dossier où les certificats seront enregistrés. Vous pouvez le faire en exécutant la commande suivante :
sudo mkdir -p /var/lib/letsencrypt/
  1. Une fois cela fait, vous pouvez maintenant générer un certificat pour votre serveur Pleroma. Pour ce faire, vous pouvez exécuter cette commande :
sudo certbot certonly --email [email protected] -d yourpleromaserver.com --standalone

Pleroma Server 32 Certbot Finished

Configurer Nginx pour Pleroma

  1. À partir de là, la prochaine chose que vous devez faire est de configurer votre serveur web nginx pour Pleroma. L’installation de Pleroma fournit déjà un modèle que vous pouvez copier dans le répertoire de configuration de nginx. Pour ce faire, vous pouvez exécuter la commande suivante :
sudo cp /opt/pleroma/installation/pleroma.nginx /etc/nginx/sites-available/pleroma.nginx
  1. Ensuite, vous devez modifier ce fichier de configuration pour l’adapter à votre serveur Pleroma. Dans la plupart des cas, cela impliquera seulement de changer quatre variables : server_name, ssl_trusted_certificate, ssl_certificate et ssl_certificate_key.
  2. Pour la première variable, vous devez changer la valeur “example.tld” par le nom de domaine de votre serveur. Dans mon cas, j’ai changé cela en “yetanotherpleromaserver.xyz”.

Pleroma Server 33 Nginx Config Server Name

  1. À partir de là, les trois variables suivantes pointent toutes vers l’emplacement du certificat SSL de votre domaine. Si vous avez créé votre certificat via ce guide, ce chemin sera “/etc/letsencrypt/live/yourdomain.name/“.
  2. Cela est déjà fourni par le modèle nginx et la seule chose qu’il reste à faire est de changer la valeur “example.tld” par votre nom de domaine.

Pleroma Server 34 Ssl Cert Config

  1. Une fois cela fait, vous pouvez maintenant activer votre configuration nginx en créant un lien symbolique vers le répertoire nginx actif. Pour ce faire, vous pouvez exécuter la commande suivante :
sudo ln -s /etc/nginx/sites-available/pleroma.nginx /etc/nginx/sites-enabled/pleroma.nginx
  1. Après cela, vous pouvez maintenant démarrer nginx en activant son service systemctl :
sudo systemctl enable nginx.service

11. Configurations Finales

  1. À partir de là, vous pouvez maintenant configurer le service système pour Pleroma et créer votre premier utilisateur. Par défaut, Pleroma inclut un modèle systemctl pour activer son service via systemd. Pour utiliser ce modèle, vous pouvez exécuter la commande suivante :
sudo cp /opt/pleroma/installation/pleroma.service /etc/systemd/system/pleroma.service

Pleroma Server 35 Copy Systemd Service

  1. Maintenant, vous pouvez ensuite activer Pleroma via systemctl en exécutant cette commande :
sudo systemctl enable pleroma.service

Pleroma Server 36 Enable Pleroma Service

  1. Enfin, vous pouvez maintenant créer votre premier utilisateur pour votre instance Pleroma en exécutant la commande pleroma.user :
sudo -Hu pleroma MIX_ENV=prod mix pleroma.user new yourusername [email protected] --admin

Pleroma Server 37 Done Installing

Lisez aussi : Comment Réparer le Problème de Ne Peut Pas Taper dans le Terminal sous Linux

Questions Fréquemment Posées

1. Les images que je télécharge contiennent toujours des données de géolocalisation. Qu’est-ce que j’ai mal fait ?

Cela peut être dû à un certain nombre de choses. Cependant, la raison la plus courante pour laquelle cela s’est produit est que vous n’avez pas le paquet exiftool. Pour le guide ci-dessus, exiftool n’était pas un paquet installé par défaut.

Ainsi, pour supprimer la géolocalisation des images que vous téléchargez, vous devez ajouter ce paquet manuellement. Pour ce faire, vous pouvez exécuter la commande suivante :

sudo apt install exiftool

2. Je ne peux pas générer un Certificat Letsencrypt. Qu’est-ce que j’ai mal fait ?

Cela peut également être dû à un certain nombre de choses. La cause la plus courante pour cela, cependant, est que nginx est toujours en cours d’exécution.

Pour que la commande certbot fonctionne, vous devez avoir les ports web communs ouverts et non pris par un programme. Pour désactiver nginx, vous pouvez exécuter la commande suivante :

sudo systemctl stop nginx

Crédit d’image : Pleroma