Matrix est un projet Python open-source pour la communication décentralisée en temps réel utilisée pour les services de messagerie et VoIP. Il permet à un utilisateur de communiquer avec d'autres utilisateurs sur un autre fournisseur de services via la voix sur IP et le chat. Matrix est un protocole standard ouvert et léger qui vous permet de créer votre propre serveur domestique, de stocker toutes les informations personnelles de l'utilisateur et de créer une salle personnelle.
Dans ce tutoriel, nous allons vous montrer comment installer Matrix Synapse avec Nginx en tant que proxy inverse sur Ubuntu 20.04.
Prérequis
- Un nouveau VPS Ubuntu 20.04 sur la plate-forme cloud Atlantic.net
- Un nom de domaine valide pointant vers l'adresse IP de votre serveur
- Un mot de passe root configuré sur votre serveur
Étape 1 - Créer un serveur cloud Atlantic.Net
Tout d'abord, connectez-vous à votre serveur Atlantic.Net Cloud. Créez un nouveau serveur en choisissant Ubuntu 20.04 comme système d'exploitation avec au moins 2 Go de RAM. Connectez-vous à votre serveur cloud via SSH et connectez-vous à l'aide des informations d'identification mises en évidence en haut de la page.
Une fois que vous êtes connecté à votre serveur Ubuntu 20.04, exécutez la commande suivante pour mettre à jour votre système de base avec les derniers packages disponibles.
apt-get update -y
Étape 2 - Installer Matrix Synapse
Tout d'abord, installez les dépendances requises avec la commande suivante :
apt-get install curl wget gnupg2 apt-transport-https -y
Une fois toutes les dépendances installées, téléchargez et ajoutez la clé GPG avec la commande suivante :
wget -qO /usr/share/keyrings/matrix-org-archive-keyring.gpg https://packages.matrix.org/debian/matrix-org-archive-keyring.gpg
Ensuite, ajoutez le référentiel Matrix à l'APT avec la commande suivante :
echo "deb [signed-by=/usr/share/keyrings/matrix-org-archive-keyring.gpg] https://packages.matrix.org/debian/ $(lsb_release -cs) main" | tee /etc/apt/sources.list.d/matrix- org.list
Ensuite, mettez à jour le référentiel et installez la dernière version de Matrix avec la commande suivante :
apt-get update -y apt-get install matrix-synapse-py3 -y
Lors de l'installation, il vous sera demandé de fournir votre nom de domaine comme indiqué ci-dessous :
Indiquez votre domaine et cliquez sur Ok bouton. Vous devriez voir la page suivante :
Sélectionnez l'option souhaitée et appuyez sur Entrée pour démarrer l'installation. Une fois Matrix installé, démarrez le service Matrix et activez-le au redémarrage du système avec la commande suivante :
systemctl start matrix-synapse systemctl enable matrix-synapse
ss -tunelp | grep 8008
Vous devriez obtenir le résultat suivant :
tcp LISTEN 0 50 127.0.0.1:8008 0.0.0.0:* users:(("python",pid=102359,fd=13)) uid:109 ino:594551 sk:a <-> tcp LISTEN 0 50 [::1]:8008 [::]:* users:(("python",pid=102359,fd=12)) uid:109 ino:594550 sk:d v6only:1 <->
Étape 3 - Configurer Matrix Synapse
Le fichier de configuration par défaut de Matrix Synapse se trouve dans /etc/matrix-synapse/homeserver.yaml. Avant de le modifier, créez un mot de passe secret avec la commande suivante :
cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1
Vous devriez obtenir le résultat suivant :
2VHeHAwjGlMlqpEGBNMhfEbb5BOmp6qE
Ensuite, modifiez le fichier de configuration Matrix :
nano /etc/matrix-synapse/homeserver.yaml
Modifiez les lignes suivantes :
listeners: - port: 8008 tls: false type: http x_forwarded: true bind_addresses: ['127.0.0.1'] resources: - names: [client, federation] compress: false enable_registration: false registration_shared_secret: "2VHeHAwjGlMlqpEGBNMhfEbb5BOmp6qE"
Enregistrez et fermez le fichier, puis redémarrez le service Matrix synapse pour appliquer les modifications.
systemctl restart matrix-synapse
À ce stade, Matrix Synapse est configuré pour écouter sur localhost.
Étape 4 - Créer un nouvel utilisateur Matrix
Ensuite, vous devrez créer un nouvel utilisateur pour Matrix Synapse. Vous pouvez utiliser cet utilisateur sur le client Matrix pour vous connecter au serveur Matrix.
Exécutez la commande suivante pour créer un nouvel utilisateur :
register_new_matrix_user -c /etc/matrix-synapse/homeserver.yaml http://localhost:8008
Il vous sera demandé de définir un nom d'utilisateur et un mot de passe comme indiqué ci-dessous :
New user localpart [root]: admin Password: Confirm password: Make admin [no]: yes Sending registration request... Success!
Une fois l'utilisateur créé, vous pouvez passer à l'étape suivante.
Étape 5 - Configurer Nginx pour Matrix Synapse
Ensuite, vous devrez installer et configurer Nginx en tant que proxy inverse pour Matrix Synapse afin de pouvoir accéder à Matrix Synapse depuis le réseau externe en utilisant le port 80.
Tout d'abord, installez le serveur Nginx avec la commande suivante :
apt-get install nginx -y
Une fois installé, créez un fichier de configuration d'hôte virtuel Nginx avec la commande suivante :
nano /etc/nginx/sites-available/matrix.conf
Ajoutez les lignes suivantes :
server { listen 80; server_name matrix.example.com; location / { proxy_pass http://localhost:8008; proxy_set_header X-Forwarded-For $remote_addr; } }
Enregistrez et fermez le fichier, puis activez l'hôte virtuel Nginx avec la commande suivante :
ln -s /etc/nginx/sites-available/matrix.conf /etc/nginx/sites-enabled/
Ensuite, vérifiez Nginx pour toute erreur de syntaxe avec la commande suivante :
nginx -t
Vous devriez obtenir le résultat suivant :
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
Ensuite, redémarrez le service Nginx pour appliquer les modifications :
systemctl restart nginx
Si vous obtenez des erreurs, vous devrez modifier le fichier de configuration du serveur par défaut Nginx et définir server_names_hash_bucket_size :
nano /etc/nginx/nginx.conf
Ajoutez la ligne suivante sous http {:
server_names_hash_bucket_size 64;
Enregistrez et fermez le fichier, puis redémarrez le service Nginx pour appliquer les modifications :
systemctl restart nginx
Étape 6 - Accéder à Matrix Synapse
Maintenant, ouvrez votre navigateur Web et accédez à l'interface Web de Matrix Synapse en utilisant l'URL http://matrix.example.com /. Vous devriez voir la page suivante :
Comme vous pouvez le voir, Matrix Synapse est maintenant en cours d'exécution.
Conclusion
Toutes nos félicitations! Vous avez installé avec succès Matrix Synapse avec Nginx en tant que proxy inverse sur Ubuntu 20.04. Vous pouvez maintenant installer le client Matrix sur votre appareil mobile ou votre ordinateur de bureau et communiquer avec d'autres utilisateurs. Commencez dès aujourd'hui avec Matrix sur l'hébergement VPS d'Atlantic.Net !