Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
serveur_hebergement:matrix:installer_un_pont_discord_-_matrix [2022/05/10 12:07] – ↷ Liens modifiés en raison d'un déplacement. fate | serveur_hebergement:matrix:installer_un_pont_discord_-_matrix [2023/08/08 14:00] (Version actuelle) – modification externe 127.0.0.1 | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
====== Installer un pont Discord - Matrix ====== | ====== Installer un pont Discord - Matrix ====== | ||
- | Pour créer un pont entre Matrix et Discord, nous allons utiliser [[https:// | + | Pour créer un pont entre Matrix et Discord, nous allons utiliser [[https:// |
- | ===== Prérequis ===== | + | ====== Prérequis |
Il vous faut un serveur Matrix, Synapse par exemple, et PostgreSQL. Je pars du principe que vous avez suivi le tuto sur comment [[serveur_hebergement: | Il vous faut un serveur Matrix, Synapse par exemple, et PostgreSQL. Je pars du principe que vous avez suivi le tuto sur comment [[serveur_hebergement: | ||
- | Il vous faut également être administrateur d'un server discord et avoir créé un bot avec les Privileged Gateway Intents d' | ||
- | ==== Node ==== | + | Lancez la commande suivante pour installer Libolm, nécessaire au chiffrement : |
+ | <code bash> | ||
- | Installez Node, npm ainsi que le paquet eslint | ||
- | <code bash> | ||
- | ===== matrix-appservice-discord ===== | ||
- | ==== Installation ==== | + | ===== Installation |
- | Récupérez | + | Récupérez |
- | <code bash>git clone https://github.com/Half-Shot/matrix-appservice-discord.git< | + | |
- | Accédez au dossier créé | + | L' |
- | <code bash>cd matrix-appservice-discord</ | + | |
- | Installez les dépendances | + | ===== Configuration |
- | <code bash>npm install</ | + | |
- | + | ||
- | Lancez la compilation | + | |
- | <code bash>npm run build</ | + | |
- | + | ||
- | L' | + | |
- | + | ||
- | ==== Configuration ==== | + | |
Créez une copie du fichier example-config.yaml | Créez une copie du fichier example-config.yaml | ||
- | <code bash> | + | <code bash>cp config.sample.yaml config.yaml</ |
Ouvrez le fichier config.yaml. | Ouvrez le fichier config.yaml. | ||
Ligne 44: | Ligne 31: | ||
Si le serveur Matrix tourne sur une autre machine, indiquez l'url du serveur Matrix. | Si le serveur Matrix tourne sur une autre machine, indiquez l'url du serveur Matrix. | ||
- | Dans la partie " | ||
- | Le clientID correspond à l' | ||
- | Le botToken se trouve dans le menu Bot de la même page. | ||
- | Passez également la variable < | ||
- | |||
- | Commentez la ligne | ||
- | < | ||
Remplacer la ligne | Remplacer la ligne | ||
- | < | + | < |
par | par | ||
- | < | + | < |
Mettez le mot de passe de votre choix, on créera la base de données plus tard. | Mettez le mot de passe de votre choix, on créera la base de données plus tard. | ||
+ | |||
+ | Dans la partie “permissions”, | ||
+ | < | ||
+ | |||
+ | Remplacez “fate” par votre nom d' | ||
+ | |||
+ | Dans la partie “encryption”, | ||
Passons à la base de données | Passons à la base de données | ||
- | ==== Création de la base de données ==== | + | ===== Création de la base de données |
Connectez-vous avec l' | Connectez-vous avec l' | ||
Ligne 68: | Ligne 55: | ||
Créez l' | Créez l' | ||
- | <code sql> | + | <code sql> |
Mettez le même mot de passe que celui que vous avez renseigné dans le fichier config.yaml | Mettez le même mot de passe que celui que vous avez renseigné dans le fichier config.yaml | ||
Ligne 80: | Ligne 67: | ||
<code bash> | <code bash> | ||
- | ==== Registration.yaml ==== | + | ===== Registration.yaml |
Les ponts ont besoin d'un fichier registration.yaml pour avoir certain droits sur votre serveur. Pour le créer, lancez la commande suivante | Les ponts ont besoin d'un fichier registration.yaml pour avoir certain droits sur votre serveur. Pour le créer, lancez la commande suivante | ||
- | <code bash>node build/src/ | + | <code bash>./mautrix-discord |
- | Ensuite ouvrez le fichier homeserver.yaml de votre serveur et indiquez l' | + | Le fichier généré doit être visible par l' |
+ | <code bash> | ||
+ | |||
+ | Ensuite ouvrez le fichier homeserver.yaml de votre serveur et indiquez l' | ||
< | < | ||
# A list of application service config file to use | # A list of application service config file to use | ||
app_service_config_files: | app_service_config_files: | ||
- | - "/ | + | - "/ |
</ | </ | ||
Ligne 95: | Ligne 85: | ||
<code bash> | <code bash> | ||
- | Lancez la commande suivante afin d' | + | ====== Lancement du pont via Systemd |
- | <code bash>npm run addbot</ | + | |
- | + | ||
- | ===== Lancement du pont via Systemd ===== | + | |
Créez le fichier | Créez le fichier | ||
- | < | + | < |
- | Copiez les lignes suivantes dedans | + | Copiez les lignes suivantes dedans |
< | < | ||
[Unit] | [Unit] | ||
- | Description=matrix-discord bridge | + | Description=mautrix-discord bridge |
- | After=matrix-synapse.service postgresql.service | + | |
[Service] | [Service] | ||
- | WorkingDirectory=/ | + | Type=exec |
- | ExecStart=npm start | + | Restart=on-failure |
+ | RestartSec=30s | ||
+ | WorkingDirectory=/ | ||
+ | ExecStart=/ | ||
User=pi | User=pi | ||
+ | |||
+ | # Optional hardening to improve security | ||
+ | ReadWritePaths=/ | ||
+ | NoNewPrivileges=yes | ||
+ | MemoryDenyWriteExecute=true | ||
+ | PrivateDevices=yes | ||
+ | PrivateTmp=yes | ||
+ | ProtectSystem=strict | ||
+ | ProtectControlGroups=true | ||
+ | RestrictSUIDSGID=true | ||
+ | RestrictRealtime=true | ||
+ | LockPersonality=true | ||
+ | ProtectKernelLogs=true | ||
+ | ProtectKernelTunables=true | ||
+ | ProtectHostname=true | ||
+ | ProtectKernelModules=true | ||
+ | PrivateUsers=true | ||
+ | ProtectClock=true | ||
+ | SystemCallArchitectures=native | ||
+ | SystemCallErrorNumber=EPERM | ||
+ | SystemCallFilter=@system-service | ||
[Install] | [Install] | ||
WantedBy=multi-user.target | WantedBy=multi-user.target | ||
+ | |||
</ | </ | ||
Modifier les chemins et le nom de l' | Modifier les chemins et le nom de l' | ||
Activez le service au démarrage | Activez le service au démarrage | ||
- | <code bash> | + | <code bash> |
Démarrez le service | Démarrez le service | ||
- | <code bash> | + | <code bash> |
+ | |||
+ | ====== Configurer le pont ====== | ||
+ | |||
+ | Installez l' | ||
- | ===== Rejoindre un channel | + | Dans votre client Matrix (Element), lancez une conversation avec @discordbot: |
+ | Scannez le code-barre qui apparaît avec l' | ||
- | Dans votre client Matrix (Element), accédez au salon # | + | Pour afficher les serveurs discords auxquels vous êtes connectés, tapez la commande < |
- | Vous trouverez le " | + | Pour se connecter avec le pont à un serveur, tapez < |