feat(stacks): migrate ntfy.opytex.org
This commit is contained in:
120
stacks/ntfy.opytex.org/README.md
Normal file
120
stacks/ntfy.opytex.org/README.md
Normal file
@@ -0,0 +1,120 @@
|
||||
# Administration ntfy
|
||||
|
||||
Toutes les commandes s'exécutent depuis le dossier contenant le `docker-compose.yml`.
|
||||
|
||||
---
|
||||
|
||||
## Utilisateurs
|
||||
|
||||
### Lister les utilisateurs
|
||||
```bash
|
||||
docker exec -it ntfy ntfy user list
|
||||
```
|
||||
|
||||
### Ajouter un utilisateur standard
|
||||
```bash
|
||||
docker exec -it ntfy ntfy user add prenom_user
|
||||
# → saisir le mot de passe interactivement
|
||||
```
|
||||
|
||||
### Ajouter un administrateur
|
||||
```bash
|
||||
docker exec -it ntfy ntfy user add --role=admin prenom_user
|
||||
```
|
||||
|
||||
### Changer le mot de passe
|
||||
```bash
|
||||
docker exec -it ntfy ntfy user change-pass prenom_user
|
||||
```
|
||||
|
||||
### Promouvoir un user en admin (ou l'inverse)
|
||||
```bash
|
||||
docker exec -it ntfy ntfy user change-role prenom_user admin
|
||||
docker exec -it ntfy ntfy user change-role prenom_user user
|
||||
```
|
||||
|
||||
### Supprimer un utilisateur
|
||||
```bash
|
||||
docker exec -it ntfy ntfy user del prenom_user
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Droits d'accès (ACL)
|
||||
|
||||
Après avoir créé un utilisateur, il faut lui donner accès aux topics UnifiedPush.
|
||||
|
||||
### Donner accès à un nouvel utilisateur
|
||||
```bash
|
||||
# Synapse peut publier sur les topics "up*" sans compte
|
||||
docker exec -it ntfy ntfy access '*' 'up*' write-only
|
||||
|
||||
# Le user peut lire ses topics "up*"
|
||||
docker exec -it ntfy ntfy access prenom_user 'up*' read-only
|
||||
```
|
||||
|
||||
> Ces deux commandes sont à exécuter pour **chaque nouvel utilisateur**.
|
||||
|
||||
### Voir toutes les ACL configurées
|
||||
```bash
|
||||
docker exec -it ntfy ntfy access
|
||||
```
|
||||
|
||||
### Révoquer les droits d'un utilisateur sur un topic
|
||||
```bash
|
||||
docker exec -it ntfy ntfy access --reset prenom_user 'up*'
|
||||
```
|
||||
|
||||
### Révoquer tous les droits d'un utilisateur
|
||||
```bash
|
||||
docker exec -it ntfy ntfy access --reset prenom_user
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Checklist : ajouter un nouvel utilisateur
|
||||
|
||||
```bash
|
||||
# 1. Créer le compte
|
||||
docker exec -it ntfy ntfy user add prenom_user
|
||||
|
||||
# 2. Donner accès aux topics UnifiedPush
|
||||
docker exec -it ntfy ntfy access '*' 'up*' write-only
|
||||
docker exec -it ntfy ntfy access prenom_user 'up*' read-only
|
||||
|
||||
# 3. Vérifier
|
||||
docker exec -it ntfy ntfy user list
|
||||
docker exec -it ntfy ntfy access
|
||||
```
|
||||
|
||||
Ensuite, communiquer à l'utilisateur :
|
||||
- L'URL du serveur : `https://ntfy.mondomaine.fr`
|
||||
- Son login et mot de passe
|
||||
- Lui demander d'installer l'app ntfy (F-Droid ou Play Store)
|
||||
|
||||
---
|
||||
|
||||
## Dépannage
|
||||
|
||||
### Un utilisateur ne reçoit pas ses notifications
|
||||
|
||||
1. Vérifier que le Matrix gateway répond (voir Supervision)
|
||||
2. Vérifier que Synapse peut joindre ntfy :
|
||||
```bash
|
||||
# Depuis le conteneur Synapse
|
||||
docker exec -it synapse curl https://ntfy.mondomaine.fr/_matrix/push/v1/notify
|
||||
```
|
||||
3. Vérifier les ACL de l'utilisateur :
|
||||
```bash
|
||||
docker exec -it ntfy ntfy access prenom_user
|
||||
```
|
||||
4. Dans Element-X : Paramètres → Notifications → Troubleshoot notifications
|
||||
|
||||
### Les logs montrent des 401 (Unauthorized)
|
||||
L'utilisateur n'a pas configuré ses identifiants dans l'app ntfy,
|
||||
ou les identifiants sont incorrects. Refaire un `change-pass` si besoin.
|
||||
|
||||
### Les logs montrent des 429 (Too Many Requests)
|
||||
Le rate limiting est déclenché. Si c'est un usage légitime,
|
||||
ajuste `visitor-message-daily-limit` dans `config/server.yml`.
|
||||
Si c'est un abus, l'IP source sera dans les logs.
|
||||
Reference in New Issue
Block a user