This repository has been archived on 2026-08-21. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
infra/stacks/ntfy.opytex.org/README.md

121 lines
3.0 KiB
Markdown

# 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.