Mastodon¶
Dans cet article
- Mastodon. Principales fonctionnalités
- Caractéristiques de la compilation
- Premiers pas après le déploiement de Mastodon
- Configurer les modifications
- Modification du nom de domaine du serveur Mastodon
- Paramètres initiaux du panneau d'administration
- Gestion des règles du serveur
- Inviter des utilisateurs
- Commande d'un serveur avec Mastodon via l'API
Information
Mastodon est une plateforme sociale décentralisée libre et open source. Contrairement aux plateformes commerciales centralisées, Mastodon n'est contrôlé par aucune organisation unique.
Mastodon. Principales fonctionnalités¶
- Mastodon permet aux utilisateurs de s'abonner et de communiquer avec d'autres utilisateurs sur tout serveur connecté ;
- La plateforme propose des flux de publications publiques pour aider les utilisateurs à découvrir du contenu intéressant. Le flux local affiche les publications de votre serveur, tandis que le flux fédéré affiche toutes les publications publiques des abonnés de votre serveur connues par votre serveur ;
- Les utilisateurs peuvent interagir directement dans le flux ou dans la vue avancée d'une publication en répondant, partageant, ajoutant aux favoris, marquant comme lu, ou à l'aide du menu supplémentaire ;
- Mastodon envoie des notifications pour divers événements d'interaction liés à votre profil et vos publications. Ces notifications peuvent être filtrées par type ;
- Pour s'abonner à un utilisateur, il suffit de cliquer sur le bouton
Followsur leur profil. Vous pouvez également activer les notifications pour les nouvelles publications provenant de vos abonnements ; - La fonction de recherche dans Mastodon vous permet de trouver des utilisateurs, hashtags et publications via un lien. Avec la recherche en texte intégral installée, vous pouvez rechercher vos propres publications et favoris ;
- Les publications privées sur Mastodon ne sont visibles que par les abonnés. Elles s'affichent dans une colonne de dialogue séparée ;
- Les listes d'abonnement peuvent être utilisées pour afficher le flux exclusivement.
Caractéristiques de la compilation¶
ID | Système d'exploitation compatible | VM | BM | VGPU | GPU | Min CPU (Cœurs) | Min RAM (Go) | Min HDD/SSD (Go) | Actif |
---|---|---|---|---|---|---|---|---|---|
59 | Ubuntu 22.04 | + | + | + | + | 2 | 2 | - | Oui |
-
Logiciels installés
Software License Mastodon AGPLv3 Nginx Custom Postgres Postgres SQL Certbot Apache 2 Redis BSD-3-Clause -
Exigences système recommandées :
- Processeur 64 bits avec 4 cœurs ;
- 8 Go de RAM ;
- 80 Go d'espace de stockage sur SSD.
Le lien pour accéder à l'interface web sera : https://mastodon{Server_ID_from_Invapi}.hostkey.in
Note
Sauf indication contraire, nous installons par défaut la dernière version du logiciel disponible sur le site du développeur ou les dépôts du système d'exploitation.
Premiers pas après le déploiement de Mastodon¶
Après paiement de la commande, une notification de préparation du serveur sera envoyée à l'adresse e-mail indiquée lors de l'inscription. Elle contiendra l'adresse IP du VPS ainsi que les identifiants de connexion. Les clients de notre entreprise gèrent leur équipement dans le panneau de gestion des serveurs et API — Invapi.
Les données d'autorisation peuvent être trouvées soit dans l'onglet Info >> Tags du panneau de gestion du serveur, soit dans l'e-mail envoyé :
- Lien pour accéder au tableau de bord Mastodon avec une interface web : dans le tag webpanel ;
- Login et Mot de passe pour se connecter au serveur: envoyés par e-mail à votre adresse une fois que le serveur est prêt après déploiement du logiciel ;
- Login et Mot de passe pour authentifier dans l'interface web Mastodon sont définis manuellement lors de la création d'un compte via la console administrateur.
Configurer les modifications¶
Pour changer la configuration de Mastodon depuis la ligne de commande, utilisez les utilitaires tootctl
et rails
:
- Paramètres du compte, créer, modifier, attribuer des permissions, etc ;
- Configuration du serveur SMTP ;
- Réglages d'enregistrement des utilisateurs.
Information
Consultez la documentation pour développeurs pour plus d'informations sur l'utilisation des utilitaires.
Exemple d'utilisation¶
- Connectez-vous au serveur via SSH:
-
Connectez-vous à la conteneur de l'application web Mastodon. Trouvez et connectez-vous à la conteneur
mastodon_web_1
: -
Pour créer un nouvel utilisateur, utilisez la commande
tootctl accounts create
. Spécifiez le nom d'utilisateur, l'email et le drapeau--confirmed
pour confirmer le compte.RemplacezRAILS_ENV=production bin/tootctl accounts create new_username --email [email protected] --confirmed
new_username
par votre désiré nom d'utilisateur et[email protected]
par l'email réel de l'utilisateur. Après avoir exécuté cette commande, l'utilisateur sera créé. Assurez-vous de sauvegarder le mot de passe affiché à l'écran :
Attribution des privilèges d'administrateur et approbation de l'utilisateur¶
Après avoir créé un utilisateur, vous devez le trouver dans la base de données pour changer ses permissions et statut.
- Démarrez la console Rails :
- Trouvez l'utilisateur par email ou nom d'utilisateur:
user = User.find_by(email: '[email protected]') # or: User.find_by(username: 'new_username')
-
Mettez à jour son statut :
Cette action supprimera la notificationYour application is pending review by our staff...
du panneau administrateur. -
Attribuez-lui un rôle administratif :
- Vérifiez :
- Quittez la console:
Configuration du serveur de messagerie¶
Si vous devez configurer ou modifier le serveur de messagerie, exécutez :
-
Ouvrez le fichier de configuration :
2. Configurez les paramètres SMTP (par exemple, pour MailHog):3. Redémarrez les conteneurs Mastodon Pour appliquer les nouveaux réglages, redémarrez les conteneurs Mastodon : 4. Vérifiez la fonctionnalité de l'email - Pour MailHog: ouvrez l'interface web# Envoi d'email # ------------- SMTP_SERVER=mailhog SMTP_PORT=1025 SMTP_LOGIN= SMTP_PASSWORD= SMTP_FROM_ADDRESS=notifications@votre_domaine SMTP_AUTH_METHOD=none SMTP_OPENSSL_VERIFY_MODE=none SMTP_ENABLE_STARTTLS=false
http://votre_serveur:8025
- Vérifiez les logs :- Testez-le: enregistrez un nouvel utilisateur et vérifiez la réception de l'email
Notes
Vérification des conteneurs Docker : Si vous n'êtes pas sûr quels conteneurs tournent, exécutez :
mastodon_web_1
,mastodon_db_1
, etc.) sont en cours d'exécution.Information
Apprenez-en davantage sur les paramètres de configuration dans la Documentation pour développeurs.
Information
Découvrez comment travailler avec setup.sh dans la Documentation pour développeurs.
Modification du nom de domaine du serveur Mastodon¶
Information
Ce guide utilise skaz.online
comme exemple de domaine. Initialement, Mastodon est configuré avec un domaine comme mastodon<server_ID>.hostkey.in
. Remplacez skaz.online
par votre domaine réel dans tous les exemples de configuration.
Fichiers et Répertoires clés¶
Fichier/Répertoire | Quoi changer |
---|---|
/opt/mastodon/.env.production | Variables d'environnement, domaines |
/data/nginx/user_conf.d/*.conf | Configuration Nginx pour le nouveau domaine |
/etc/letsencrypt/live/ | Certificats SSL (si vous utilisez certbot) |
Fichiers docker-compose | Domaine dans docker-compose.yml ou variables |
Configuration SMTP | Mettez à jour les adresses liées au domaine |
Pour changer le nom de domaine, suivez ces étapes : 1. Enregistrez votre propre domaine, par exemple mastodon.mondomaine.com
. 2. Configurez les enregistrements DNS pour ce domaine: - Définissez un enregistrement A pointant vers l'adresse IP du serveur Mastodon ; - Configurez un enregistrement MX pointant vers le serveur de messagerie.
!!! info "Information"
[Gestion des DNS](../../account/dns_management.md)
-
Ajoutez un enregistrement PTR dans les paramètres d'adresse IP sur Invapi;
Information
En savoir plus sur la configuration des enregistrements PTR sur Invapi ici.
-
Mettez à jour les variables d'environnement de Mastodon
Modifiez le fichier
/opt/mastodon/.env.production
, remplacez la valeur actuelle (par exemple,mastodon<server_ID>.hostkey.in
) par votre nouveau domaine :5. Configurez Nginx avec le support HTTPS# Précédent: # LOCAL_DOMAIN=mastodon<server_ID>.hostkey.in # Mis à jour: LOCAL_DOMAIN=skaz.online WEB_DOMAIN=skaz.online
5.1 Créez la configuration Nginx Important : Créez un nouveau fichier de configuration, remplacez l'ancien. Les anciennes configurations peuvent contenir différentes directives
proxy_pass
qui entraîneront des dysfonctionnements. Créez le fichier de configuration Nginx/data/nginx/user_conf.d/skaz.online.conf
avec le contenu suivant :5.2 Obtenez le certificat SSLserver { listen 80; server_name skaz.online; return 301 https://$host$request_uri; } server { listen 443 ssl; listen [::]:443 ssl; server_name skaz.online; # Certificats SSL ssl_certificate /etc/letsencrypt/live/skaz.online/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/skaz.online/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/skaz.online/chain.pem; ssl_dhparam /etc/letsencrypt/dhparams/dhparam.pem; # Application principale Mastodon (port 3000) location / { proxy_set_header X-Forwarded-Proto https; proxy_set_header X-Forwarded-Ssl on; proxy_set_header Host $host; proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://127.0.0.1:3000; real_ip_header X-Forwarded-For; # Support WebSocket proxy_http_version 1.1; proxy_set_header X-Scheme $scheme; proxy_buffering off; } # API de streaming Mastodon (port 4000) location ^~ /api/v1/streaming { proxy_set_header X-Forwarded-Proto https; proxy_set_header X-Forwarded-Ssl on; proxy_set_header Host $host; proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://127.0.0.1:4000; real_ip_header X-Forwarded-For; # Support WebSocket proxy_http_version 1.1; proxy_set_header X-Scheme $scheme; proxy_buffering off; } }
Vérifiez la présence du certificat :
Si le certificat est manquant, obtenez-le : 6. Nettoyez les configurations conflictuelles
Important ! Supprimez les anciennes configurations Nginx car plusieurs fichiers .conf peuvent causer des conflits :
Supprimez l'ancienne configuration (par exemple, pour mastodon<server_ID>.hostkey.in
)
mv /data/nginx/user_conf.d/mastodon<server_ID>.hostkey.in.conf /data/nginx/user_conf.d/mastodon<server_ID>.hostkey.in.conf.backup
- Des directives
listen 443 ssl
dupliquées provoquent une erreurduplicate listen options
- Les anciennes configurations peuvent avoir différentes adresses ou ports
proxy_pass
-
Nginx peut mal interpréter les requêtes avec plusieurs blocs serveur
-
Redémarrez les services Dans le répertoire contenant
docker-compose.yml
, exécutez : - Vérifiez la fonctionnalité Test depuis la ligne de commande Réponse attendue :
HTTP/1.1 200 OK
Vérification dans un navigateur Ouvrez le domaine dans un navigateur — la page d'accueil Mastodon devrait charger.
Paramètres initiaux du panneau d'administration¶
Pour accéder au panneau d'administration, suivez le lien depuis le webpanel tag, cliquez sur le Log In bouton, et entrez les identifiants définis précédemment.
Gestion des règles du serveur¶
Les administrateurs et modérateurs de chaque serveur individuel dans ce réseau social décentralisé établissent les règles pour Mastodon. Pour gérer les règles, allez à Administration >> Server Rules.
Principes de base pour la définition des règles :
- Assurez-vous que les règles sont raisonnables et suivent les normes généralement acceptées de décence pour éviter de décourager les utilisateurs ;
- Spécifiez clairement les types de contenu interdits, tels que cruauté, violence et activités illégales, et clarifiez le niveau acceptable de contenu NSFW ;
- Indiquez les procédures pour avertir, bloquer ou restreindre les contrevenants aux règles, ainsi que les actions disciplinaires et leurs délais ;
- Les règles du serveur doivent être facilement accessibles à tous les utilisateurs et affichées publiquement lors de l'enregistrement ;
- Il est important de revoir et mettre à jour régulièrement les règles à mesure que le serveur se développe, et d'impliquer la communauté dans le processus de modération et d'amélioration.
Inviter des utilisateurs¶
Mastodon a plusieurs onglets dans le flux pour gérer les abonnements et inviter de nouveaux utilisateurs :
- Follows and Followers - cet onglet affiche les comptes auxquels l'utilisateur actuel est abonné, et le flux montrera des entrées de ces utilisateurs. De plus, cet onglet liste ceux qui sont abonnés à ce compte, qui constitue l'audience sur Mastodon.
- Invite people - fonction permettant aux utilisateurs d'inviter des amis et connaissances à leur réseau social. Ce texte décrit la création d'un lien unique que vous pouvez partager pour permettre à d'autres utilisateurs de rejoindre le serveur Mastodon.
Note
Pour plus d'informations détaillées sur les paramètres basiques de Mastodon, reportez-vous à la documentation développeur.
Commande d'un serveur avec Mastodon via l'API¶
Pour installer ce logiciel via l'API, suivez ces instructions.
Une partie du contenu de cette page a été créée ou traduite par IA.