tuto2: Update for 2023 students
This commit is contained in:
parent
7925fd8a65
commit
0ebf69f4cd
9 changed files with 200 additions and 76 deletions
|
|
@ -9,10 +9,10 @@ gestionnaire de configuration.
|
|||
Après cet échauffement, vous devriez être prêt à créer un *playbook*
|
||||
dédié à l'installation d'un serveur [Matrix](https://matrix.org/) :
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
Vous connaissez et utilisez sans doute Slack, un service de messagerie
|
||||
Vous connaissez et utilisez sans doute Discord ou Slack, un service de messagerie
|
||||
instantannée qui a supplanté IRC, Jabber, ... Il vient avec le gros
|
||||
inconvénient qu'il est centralisé, qu'il ne permet pas de faire discuter des
|
||||
personnes qui, bien qu'utilisant le même service, ne sont pas dans le même
|
||||
|
|
@ -24,9 +24,25 @@ une solution de messagerie décentralisée et permet de réaliser du chiffrement
|
|||
de bout-en-bout.
|
||||
|
||||
Vous trouverez la documentation d'installation précise et détaillée à :
|
||||
<https://github.com/matrix-org/synapse/blob/master/README.rst> (attention,
|
||||
pensez à vous fixer une version, n'utilisez pas la branche master qui risque de
|
||||
ne plus fonctionner au moment du moulinétage de votre rendu).
|
||||
<https://matrix-org.github.io/synapse/latest/>.\
|
||||
|
||||
::::: {.warning}
|
||||
|
||||
Vous avez 5 solutions pour réaliser cette partie, mais 2 sont à proscrire. Vous pouvez :
|
||||
|
||||
- utiliser [le playbook officiel](https://github.com/spantaleev/matrix-docker-ansible-deploy) ;
|
||||
- installer [les paquets officiels de la dernière version
|
||||
stable](https://matrix-org.github.io/synapse/latest/setup/installation.html#debianubuntu)
|
||||
et réaliser le playbook vous-même (quitte à recopier des bouts du playbook
|
||||
officiel) ;
|
||||
- installer [les modules Python depuis PyPI](https://matrix-org.github.io/synapse/latest/setup/installation.html#installing-as-a-python-module-from-pypi).
|
||||
|
||||
Vous ne pouvez pas :
|
||||
|
||||
- déployer le conteneur Docker ;
|
||||
- déployer à partir des sources.
|
||||
|
||||
:::::
|
||||
|
||||
Vous devrez attacher une importance tout particulière à la sécurité de
|
||||
la solution que vous déployez : configurations durcies, utilisateur
|
||||
|
|
@ -34,9 +50,17 @@ dédié lorsque c'est possible (pas de `root` !), droits d'accès et
|
|||
permissions des répertoires, etc.
|
||||
|
||||
Profitez des [modules de base de
|
||||
données](https://docs.ansible.com/ansible/2.9/modules/list_of_database_modules.html)
|
||||
données](https://docs.ansible.com/ansible/latest/collections/community/postgresql/index.html)
|
||||
pour l'initialiser correctement. Et bien entendu de l'ensemble des
|
||||
modules décrits dans la documentation standard !
|
||||
modules décrits dans la documentation standard !\
|
||||
|
||||
::::: {.warning}
|
||||
|
||||
L'utilisation des modules
|
||||
[`ansible.builtin.command`](https://docs.ansible.com/ansible/latest/collections/ansible/builtin/command_module.html#ansible-collections-ansible-builtin-command-module)
|
||||
et assimilés est interdite en toute circonstance.
|
||||
|
||||
:::::
|
||||
|
||||
|
||||
## Configurations
|
||||
|
|
@ -44,9 +68,28 @@ modules décrits dans la documentation standard !
|
|||
Tous les éléments de configuration (mot de passes de connexion à la
|
||||
base de données, chemins, etc.) sont à déclarer comme variables dans
|
||||
le fichier `vars/matrix-config.yml`, que vous prendrez soin d'importer
|
||||
dans votre *Playbook*.
|
||||
dans votre *Playbook*.\
|
||||
|
||||
Vous devrez générer un certificat TLS afin de joindre les autres serveurs.
|
||||
::::: {.warning}
|
||||
|
||||
Vous devez utiliser `ansible-vault` pour stocker de manière sûre les données
|
||||
sensibles tels que les mots de passes. Vous pouvez ajouter un second fichier de
|
||||
variables pour cela, si cela vous paraît plus opportun.
|
||||
|
||||
:::::
|
||||
|
||||
Vous devrez générer un certificat TLS afin de joindre les autres serveurs.\
|
||||
|
||||
::::: {.warning}
|
||||
|
||||
À aucun moment la clef privée de votre certificat ne doit faire parti de votre
|
||||
dépôt. Dans certaines circonstances, il peut être pratique d'avoir cette clef
|
||||
dans un *vault*, mais ici ce que l'on attend c'est que le certificat soit
|
||||
généré s'il n'existe pas déjà ou qu'il a expiré. Éventuellement, une solution
|
||||
automatisant son renouvellement automatique serait appréciable (mais non
|
||||
obligatoire).
|
||||
|
||||
:::::
|
||||
|
||||
|
||||
## Backup
|
||||
|
|
@ -60,7 +103,7 @@ de données. Le *dump* obtenu est à placer dans `/var/backups/`.
|
|||
Vous n'êtes pas tenu d'installer un client. Pour vos tests, vous pouvez
|
||||
utiliser <https://app.element.io/>, en changeant l'adresse du serveur Matrix pour
|
||||
votre sous-domaine dédié à Matrix (normalement
|
||||
<https://matrix.login-x.srs.p0m.fr/>). (Conservez le serveur d'identité à
|
||||
<https://matrix.login-x.srs.example.tld/>). (Conservez le serveur d'identité à
|
||||
<https://vector.im>).
|
||||
|
||||
|
||||
|
|
@ -71,4 +114,4 @@ Pour valider l'installation de votre serveur, rejoignez le canal
|
|||
`#adlin:nemunai.re` et envoyez un message « Ping ! » pour signaler votre
|
||||
présence.
|
||||
|
||||
Vous devriez également pouvoir tester entre-vous.
|
||||
Vous devriez également pouvoir tester en communiquant entre-vous.
|
||||
|
|
|
|||
Reference in a new issue