GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment installer Matrix Synapse Chat sur Ubuntu 18.04 LTS

Matrix est un nouvel écosystème de communication décentralisée en temps réel pour les services de messagerie instantanée fédérée ouverte et de VoIP. Il fournit des API RESTful HTTP JSON pour créer des serveurs de chat distribués et fédérés sans point de contrôle unique ni défaillance et fournit toutes les références pour les API.

Synapse est une implémentation du serveur domestique Matrix créé par l'équipe Matrix et écrit en Python/Twisted. Avec ce logiciel, nous pouvons implémenter la méthode matricielle pour une communication décentralisée, nous pouvons créer notre propre serveur domestique et stocker toutes les informations personnelles de l'utilisateur, l'historique des discussions, créer la salle pour son propre usage, etc.

Dans ce tutoriel, nous allons vous montrer étape par étape comment installer et configurer Matrix Synapse sur Ubuntu 18.04. Nous allons configurer Matrix Synapse sur l'adresse IP locale et configurer le serveur Web Nginx en tant que proxy inverse pour celui-ci, et implémenter la connexion HTTPS entre les clients et le serveur Web frontal Nginx.

Prérequis

  • Ubuntu 18.04
  • Privilèges root
  • Nom de domaine ou sous-domaine Matrix - matrix.hakase-labs.io

Qu'allons-nous faire ?

  1. Mettre à jour et mettre à niveau le système Ubuntu 18.04
  2. Installer Matrix Synapse
  3. Configurer Matrix Synapse
  4. Générer SSL Letsencrypt
  5. Installer et configurer Nginx en tant que proxy inverse pour Matrix Synapse
  6. Configurer le pare-feu UFW
  7. Configurer un nouvel utilisateur Matrix
  8. Test

Étape 1 - Mise à jour et mise à niveau du système

Connectez-vous à votre serveur Ubuntu, mettez à jour le référentiel et mettez à niveau tous les packages à l'aide de la commande apt ci-dessous.

sudo apt update
sudo apt upgrade

Et tous les packages Ubuntu ont été mis à jour.

Étape 2 - Installer Matrix Synapse

Dans cette étape, nous allons installer le logiciel Matrix Synapse en utilisant les packages Debian du référentiel officiel Matrix.

Ajoutez la clé de matrice et le référentiel en exécutant toutes les commandes ci-dessous.

wget -qO - https://matrix.org/packages/debian/repo-key.asc | sudo apt-key add -
sudo add-apt-repository https://matrix.org/packages/debian/

La commande mettra automatiquement à jour le référentiel.

Installez maintenant matrix synapse en utilisant la commande apt comme ci-dessous.

sudo apt install matrix-synapse -y

Lors de l'installation, il vous demandera le nom du serveur de matrice - tapez le nom de domaine de la matrice 'matrix.hakase-labs.io'.

Et pour le rapport de données anonymes, choisissez "Non".

Lorsque l'installation de Matrix Synapse est terminée, démarrez le service et activez-le pour qu'il se lance à chaque démarrage du système.

sudo systemctl start matrix-synapse
sudo systemctl enable matrix-synapse

La synapse matricielle est maintenant opérationnelle en utilisant la configuration par défaut sur les ports '8008' et '8448'. Vérifiez à l'aide de la commande netstat.

netstat -plntu

Étape 3 - Configurer Matrix Synapse

Après l'installation de Matrix Synapse, nous allons le configurer pour qu'il s'exécute sous l'adresse IP locale, désactiver l'enregistrement de Matrix Synapse et activer le secret partagé d'enregistrement.

Avant de modifier la configuration du serveur domestique, nous devons générer la clé secrète partagée.

Exécutez la commande ci-dessous.

cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1

Et vous obtiendrez la clé générée. Copiez la clé de résultat.

Nous devons maintenant éditer le fichier de configuration du serveur domestique 'homeserver.yaml' dans le répertoire '/etc/matrix-synapse/'. Changez le répertoire actuel en '/etc/matrix-synapse' et modifiez le fichier de configuration à l'aide de vim.

cd /etc/matrix-synapse/
vim homeserver.yaml

Remplacez les ports d'écoute HTTP et HTTPS '8008' et '8448' par l'adresse IP locale '127.0.0.1'.

    port: 8448
    bind_addresses:
      - '127.0.0.1'

    - port: 8008
    bind_addresses: ['127.0.0.1']

Désactivez l'enregistrement de la synapse matricielle, décommentez la configuration 'registration_shared_secret' et collez la clé secrète générée.

enable_registration: False
registration_shared_secret: "MtkF9JOkNHsRRISyR5L91KAQlrrPhyWX"

Enregistrez et quittez.

Remarque :

registration_shared_secret :si cette option est définie, l'enregistrement est autorisé par toute personne disposant également du secret partagé, même si l'enregistrement est désactivé.

Maintenant, redémarrez les services Matrix Synapse.

sudo systemctl restart matrix-synapse

Vérifiez le service homeserver en utilisant la commande ci-dessous.

netstat -plntu

Vous obtiendrez le service matrix synapse est maintenant sur l'adresse IP locale.

Et nous avons terminé l'installation et la configuration de la synapse matricielle.

Étape 4 - Générer des certificats SSL Letsencrypt

Dans ce tutoriel, nous allons activer HTTPS pour le proxy inverse Nginx, et nous allons générer les fichiers de certificat SSL à partir de Letsencrypt.

Installez l'outil Letsencrypt à l'aide de la commande apt ci-dessous.

sudo apt install letsencrypt -y

L'outil Letsencrypt est installé sur le système, générez maintenant les fichiers de certificat SSL pour le nom de domaine de la matrice 'matrix.hakase-labs.io' en utilisant la commande certbot comme indiqué ci-dessous.

certbot certonly --rsa-key-size 2048 --standalone --agree-tos --no-eff-email --email [email protected] -d matrix.hakase-labs.io

L'outil Letsencrypt générera des fichiers de certificat SSL en exécutant le serveur Web temporaire "autonome" pour vérification.

Et quand il sera terminé, vous obtiendrez le résultat comme indiqué ci-dessous.

Les fichiers de certificat SSL pour le nom de domaine matrix synapse 'matrix.hakase-labs.io' sont générés dans le répertoire '/etc/letsencrypt/live/'.

Étape 5 - Installer et configurer Nginx en tant que proxy inverse

Dans cette étape, nous allons installer le serveur Web Nginx et le configurer en tant que proxy inverse pour le serveur domestique qui s'exécute sur le port '8008'.

Installez le serveur Web Nginx à l'aide de la commande apt ci-dessous.

sudo apt install nginx -y

Une fois l'installation terminée, démarrez le service et activez-le pour qu'il se lance à chaque démarrage du système

sudo systemctl start nginx
sudo systemctl enable nginx

Ensuite, nous allons créer une nouvelle configuration d'hôte virtuel pour le nom de domaine de la matrice 'matrix.hakase-labs.io'.

Allez dans le répertoire de configuration '/etc/nginx' et créez un nouveau fichier d'hôte virtuel 'matrix'.

cd /etc/nginx/
vim sites-available/matrix

Collez-y la configuration suivante.

server {
       listen 80;
       server_name matrix.hakase-labs.io;
       return 301 https://$server_name$request_uri;
}

server {
    listen 443 ssl;
    listen [::]:443 ssl;
    server_name matrix.hakase-labs.io;

    ssl_certificate /etc/letsencrypt/live/matrix.hakase-labs.io/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/matrix.hakase-labs.io/privkey.pem;

    # If you don't wanna serve a site, comment this out
    root /var/www/html;
    index index.html index.htm;

    location /_matrix {
      proxy_pass http://127.0.0.1:8008;
      proxy_set_header X-Forwarded-For $remote_addr;
    }
}

Enregistrez et quittez.

Activez le fichier d'hôte virtuel et testez la configuration.

ln -s /etc/nginx/sites-available/matrix /etc/nginx/sites-enabled/
nginx -t

Assurez-vous qu'il n'y a pas d'erreur, puis redémarrez les services Nginx.

sudo systemctl restart nginx

L'installation et la configuration de Nginx en tant que proxy inverse pour le serveur domestique Matrix Synapse sont terminées.

Étape 6 - Configurer le pare-feu UFW

Dans ce tutoriel, nous n'ouvrirons que trois ports pour nos services. Nous n'autoriserons que les connexions SSH, HTTP et HTTPS sur la configuration du pare-feu UFW.

Ajoutez les services SSH, HTTP et HTTPS à la configuration du pare-feu UFW en exécutant la commande ci-dessous.

ufw allow ssh
ufw allow http
ufw allow https

Activez maintenant le service de pare-feu UFW, puis vérifiez l'état.

ufw enable
ufw status

Et vous obtiendrez le résultat comme indiqué ci-dessous.

Et nous avons terminé la configuration du pare-feu UFW.

Étape 7 - Créer un nouvel utilisateur Matrix

À ce stade, l'installation et la configuration du serveur domestique Matrix Synapse sont terminées. Et dans cette étape, nous vous montrerons comment ajouter un nouvel utilisateur de matrice à partir du serveur de ligne de commande.

Pour créer un nouvel utilisateur de matrice, exécutez la commande ci-dessous.

register_new_matrix_user -c /etc/matrix-synapse/homeserver.yaml https://127.0.0.1:8448

Vous devez maintenant saisir le nom d'utilisateur, le mot de passe et décider si l'utilisateur aura ou non les privilèges d'administrateur.

Ci-dessous le résultat sur mon système.

Et nous avons créé un nouvel utilisateur de matrice nommé "hakase" avec des privilèges d'administrateur.

Étape 8 - Tester

Téléchargez l'application de bureau Riot pour votre système d'exploitation et installez-la.

Ouvrez le logiciel Riot et vous obtiendrez la page de connexion Matrix comme ci-dessous.

Saisissez le nom d'utilisateur et le mot de passe de la matrice, puis choisissez l'option "Serveur personnalisé" et saisissez le nom de domaine personnalisé "matrix.hakase-labs.io".

Cliquez sur le bouton "Connexion".

Et maintenant, vous obtiendrez le tableau de bord Riot.

Le serveur domestique Matrix Synapse est opérationnel sous la connexion HTTPS du proxy inverse Nginx, et l'utilisateur "hakase" est maintenant connecté au serveur domestique Matrix à l'aide du bureau de l'application Riot.

Configuration utilisateur de la matrice.

Utilisateur du chat Matrix en tant que groupe.


Ubuntu
  1. Comment installer Docker sur Ubuntu 22.04 / 20.04 LTS

  2. Comment installer PlayOnLinux sur Ubuntu 20.04 LTS

  3. Comment installer MariaDB dans Ubuntu 20.04 LTS

  4. Comment installer Ansible sur Ubuntu 20.04 LTS / 21.04

  5. Comment installer Minikube sur Ubuntu 20.04 LTS / 21.04

Comment installer Rocket.Chat sur Ubuntu 16.04 LTS

Comment installer Go sur Ubuntu 18.04 LTS

Comment installer Go sur Ubuntu 20.04 LTS

Comment installer Rocket.Chat sur Ubuntu 20.04 LTS

Comment installer Zulip Chat Server sur Ubuntu 20.04 LTS

Comment installer Matrix Synapse sur Ubuntu 20.04