Skip to content
Snippets Groups Projects
Commit 9498fbf4 authored by Hugo Debuyser's avatar Hugo Debuyser
Browse files

avancement partie 3 postgres + accès distance

parent 47593ed9
No related branches found
No related tags found
No related merge requests found
...@@ -22,8 +22,115 @@ Durant l'installation, le gestionnaire de paquets nous demande le nom de notre i ...@@ -22,8 +22,115 @@ Durant l'installation, le gestionnaire de paquets nous demande le nom de notre i
Le serveur écrira ses messages à destination de l’administrateur (les logs) dans le fichier /var/log/matrix-synapse/homeserver.log. Le serveur écrira ses messages à destination de l’administrateur (les logs) dans le fichier /var/log/matrix-synapse/homeserver.log.
## ⚙️ Paramétrer l’accès à distance
Il est important de noter que, par défaut, synapse écoute uniquement les interfaces de boucle locale. Nous devons alors lui permettre d'accéder depuis l'extérieur de la machine virtuelle en lui faisant écouter l'interface située dans notre réseau 10.42.0.0/16.
Il vous suffit alors de modifier la configuration de synapse afin qu'il écoute sur l'interface réseau attaché à notre réseau 10.42.0.0/16 en supplément de la boucle locale.
Allez dans le fichier :
```bash
nano /etc/matrix-synapse/homeserver.yaml
```
```bash
pid_file: "/var/run/matrix-synapse.pid"
listeners:
- port: 8008
tls: false
type: http
x_forwarded: true
bind_addresses: ['::1', '127.0.0.1', '[ Ajoutez votre adresse ici ]']
resources:
- names: [client, federation]
compress: false
- port: 8008
tls: false
type: http
x_forwarded: true
bind_addresses: ['10.42.0.0/16']
```
## ⚙️ Paramétrer une instance dans un réseau privé
Nous avons une installation peu commune car notre serveur ne peut pas être accessible directement depuis internet, mais pour une production réelle, on voudrait qu'il le soit. La configuration par défaut de Synapse considère que notre serveur est accessible depuis l'extérieuret qu'il ne cherche pas à contacter des éléments situés sur le réseau privé.
Dans le cas par exemple où notre serveur contacte d'autres serveur pour obtenir des clés publiques de signatures.
___
Il nous suffit alors d'ajouter la ligne `registration_shared_secret` à notre configuration situé dans `/etc/matrix-synapse/homeserver.yaml`.
Une fois ette option activée, elle permet d'enregistrer des comptes standard ou administrateur par toute personne possédant le code secret partagé, même si l'option enable_registration n'est pas activée.
Cette fonction est principalement destinée à être utilisée avec le script register_new_matrix_user (voir Enregistrement d'un utilisateur) ; toutefois, l'interface est documentée.
Configuration à utilisé :
```bash
registration_shared_secret : <Chaîne privée>
```
___
## 🖥️ Configuration d'une base de données Postgres
Synapse, par défaut, utilise une base de données sqlite qui n'est pas suffisant pour une instance en production. Nous allons modifier notre configuration afin d'utiliser une base de données Postgres. Allez dans le fichier de configuration `/etc/matrix-synapse/homeserver.yaml` et la configuration qui devrait être comme ceci :
```bash
database:
name: sqlite3
args:
database: /path/to/homeserver.db
```
Afin d'avoir ceci
```bash
database:
name: psycopg2
args:
user: synapse_user
password: synapse
dbname: synapse
host: localhost
port: 5432
```
Maintenant notre configuration postgres mise en place, nous devons recréer cette base avec les bonnes options.
Tout d'abord, nous allons supprimer notre base de donnée précédente matrix :
```bash
sudo -u postgres dropdb synapse
```
Nous devons ensuite créer notre base de données Synapse :
```bash
sudo -u postgres createdb --encoding=UTF8 --locale=C --template=template0 --owner=synapse_user synapse
```
Créer ensuite le user pour synapse :
```bash
sudo -u postgres createuser -P synapse_user
```
Vous pouvez ensuite vérifier si votre base a bien été créée avec les commandes suivantes :
```bash
psql -U synapse_user -h localhost synapse
\d
```
Afin de créer un utilisateur sur notre base nous devons utiliser le script `register_new_matrix_user`, en spécifiant la localisation du fichier de configuration `/etc/matrix-synapse/homeserver.yaml` en ayant spéficié le registration_shared_secret :
```bash
sudo register_new_matrix_user -c /etc/matrix-synapse/homeserver.yaml -u "username" -p "PASSWORD"
```
En remplacant "username" et "PASSWORD" par ce qui vous convient.
<hr> <hr>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment