admin:services:xmpp.chapril.org
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédenteProchaine révisionLes deux révisions suivantes | ||
admin:chatons:xmpp [2019/06/15 13:14] – [Première installation] pitchum | admin:services:xmpp.chapril.org [2023/03/15 11:01] – [Retirer des messages inappropriés dans un salon] Modération SQL manuelle plus simple et plus efficace pitchum | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | |||
====== Service xmpp.chapril.org ====== | ====== Service xmpp.chapril.org ====== | ||
+ | |||
===== Aspects notables de cette instance XMPP ===== | ===== Aspects notables de cette instance XMPP ===== | ||
- | '' | + | ==== Identifiants XMPP ==== |
- | * durée de rétention | + | Les comptes créés ont des identifiants |
- | * les règles | + | |
- | ===== Routage | + | ==== Lutte anti-spam/ |
+ | |||
+ | L' | ||
+ | Il y a actuellement deux mécanismes qui peuvent un peu limiter les abus. | ||
+ | |||
+ | Actuellement l' | ||
+ | Attention donc le jour où on envisage d' | ||
+ | |||
+ | Lors de l' | ||
+ | En supplément, | ||
+ | |||
+ | ==== Quotas de stockage ==== | ||
+ | |||
+ | Les données partagées (photos, vidéos, pdf, ...) sont stockées pendant 380 jours maximum. | ||
+ | C'est un peu plus qu'une année et ça peut être utile par exemple à un repas de famille annuel où on aimerait revoir une photo prise l'an passé. | ||
+ | |||
+ | Chaque compte dispose d'un quota de 500 Mo pour ces données. | ||
+ | Le mécanisme de quota dans ejabberd n'est pas bloquant, lorsqu' | ||
+ | |||
+ | ==== Données personnelles ==== | ||
+ | |||
+ | <note important> | ||
+ | Lister les mesures mises en œuvre pour limiter la fuite de données personnelles et décrire clairement ce qui ne peut pas être protégé (par ex. les admins auront toujours la possibilité de savoir quel compte à déposé quel fichier via http_upload) | ||
+ | </ | ||
+ | |||
+ | |||
+ | ===== Intégration du service dans l' | ||
+ | |||
+ | ==== Routage | ||
Les ports à ouvrir : | Les ports à ouvrir : | ||
Ligne 15: | Ligne 44: | ||
* TCP 5223 : xmpps-client | * TCP 5223 : xmpps-client | ||
* TCP 5269 : xmpp-server | * TCP 5269 : xmpp-server | ||
+ | * TCP 3478 : _stun et _turn | ||
+ | * TCP 5349 : _stuns et _turns | ||
- | Les vhosts pour nginx et letsencrypt | + | <note important> |
- | * xmpp.chapril.org | + | ==== Certificats SSL ==== |
- | * muc.xmpp.chapril.org | + | |
- | * pubsub.xmpp.chapril.org | + | |
- | * upload.xmpp.chapril.org | + | |
- | * proxy.xmpp.chapril.org | + | |
- | Les enregistrements DNS : | + | Le service XMPP n' |
- | <code> | + | <note important>**TODO** : détailler la génération de certificats DNS |
- | xmpp | + | |
- | muc.xmpp | + | |
- | echo.xmpp | + | |
- | pubsub.xmpp | + | |
- | upload.xmpp | + | |
- | ; | + | |
+ | En attendant, [[admin: | ||
- | _xmpp-server._tcp.xmpp.chapril.org. | + | |
- | _xmpp-client._tcp.xmpp.chapril.org. | + | |
- | _xmpps-client._tcp.xmpp.chapril.org. | + | |
- | ; un jour peut-être, pour les flux audio/ | + | |
- | ; | + | |
- | ; | + | |
- | _xmppconnect.xmpp.chapril.org. | + | |
- | _xmppconnect.xmpp.chapril.org. | + | * sur bastion |
+ | * xmpp.chapril.org : uniquement pour le site Web et pour le service de partage de fichiers http_upload | ||
+ | * sur xmpp | ||
+ | * chapril.org | ||
+ | * *.chapril.org (wildcard) | ||
+ | </ | ||
+ | |||
+ | ==== Enregistrements DNS ==== | ||
+ | |||
+ | <code bind> | ||
+ | xmpp IN A | ||
+ | muc | ||
+ | echo IN CNAME | ||
+ | pubsub-xmpp | ||
+ | upload-xmpp | ||
+ | irc | ||
+ | ; | ||
+ | |||
+ | _xmpp-server._tcp.chapril.org. | ||
+ | _xmpp-client._tcp.chapril.org. | ||
+ | _xmpps-client._tcp.chapril.org. | ||
+ | _stun._udp.chapril.org. | ||
+ | _stun._tcp.chapril.org. | ||
+ | _stuns._tcp.chapril.org. | ||
+ | _turn._tcp.chapril.org. | ||
+ | _turn._udp.chapril.org. | ||
+ | _turns._tcp.chapril.org. | ||
+ | |||
+ | _xmppconnect.chapril.org. | ||
+ | _xmppconnect.chapril.org. | ||
</ | </ | ||
Ligne 66: | Ligne 113: | ||
<code bash> | <code bash> | ||
psql -U ejabberd -h localhost ejabberd < / | psql -U ejabberd -h localhost ejabberd < / | ||
+ | </ | ||
+ | |||
+ | Pour le pont XMPP/IRC Biboumi : | ||
+ | <code bash> | ||
+ | sudo apt install biboumi | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | **TODO** lister les principaux éléments de configuration dans le fichier /// | ||
+ | </ | ||
+ | |||
+ | ===== Modération ===== | ||
+ | |||
+ | ==== Désactiver un compte ==== | ||
+ | |||
+ | Génère un mot de passe aléatoire pour un compte et ferme immédiatement toutes les sessions actives de ce compte . | ||
+ | (encore jamais testé) | ||
+ | |||
+ | <code bash> | ||
+ | sudo -u ejabberd ejabberdctl ban_account < | ||
+ | </ | ||
+ | |||
+ | Si besoin de réactiver le compte, il faut lui affecter un nouveau mot de passe (il n'est pas possible de restaurer le précédent) et le communiquer à son propriétaire. | ||
+ | |||
+ | <code bash> | ||
+ | sudo -u ejabberd ejabberdctl change_password < | ||
+ | </ | ||
+ | |||
+ | ==== Supprimer un compte ==== | ||
+ | |||
+ | Pour supprimer définitivement un compte : | ||
+ | <code bash> | ||
+ | sudo -u ejabberd ejabberdctl unregister < | ||
+ | </ | ||
+ | |||
+ | |||
+ | ==== Retirer des messages inappropriés dans un salon ==== | ||
+ | |||
+ | Actuellement, | ||
+ | |||
+ | Donc en attendant, pour nettoyer d' | ||
+ | * on peut retirer/ | ||
+ | * il faut nettoyer à la main directement en BDD, donc il faut être très prudent et bien cibler exactement les messages incriminés | ||
+ | |||
+ | Procédure suggérée, issue d'un expérience vécue. | ||
+ | |||
+ | Un compte spammeur du serveur '' | ||
+ | |||
+ | Cet url se retrouve dans les colonnes '' | ||
+ | |||
+ | <code sql> | ||
+ | -- Identifier les lignes ayant besoin d' | ||
+ | SELECT id, nick, bare_peer, txt, xml, created_at | ||
+ | FROM archive | ||
+ | WHERE kind = ' | ||
+ | AND bare_peer LIKE ' | ||
+ | AND created_at < now() - interval '3 day' | ||
+ | </ | ||
+ | |||
+ | Récupérer les '' | ||
+ | |||
+ | <note important> | ||
+ | Bien penser à vérifier qu'on a la bonne clause //WHERE// au moment de faire //UPDATE ...// | ||
+ | |||
+ | <code sql> | ||
+ | UPDATE archive | ||
+ | SET | ||
+ | xml = regexp_replace(xml, | ||
+ | txt = ' | ||
+ | WHERE id IN (30787317, | ||
</ | </ | ||
===== Maintenance ===== | ===== Maintenance ===== | ||
+ | ==== Consulter les logs ==== | ||
+ | <code bash> | ||
+ | tail -f / | ||
+ | </ | ||
+ | |||
+ | ==== Augmenter la verbosité des logs ==== | ||
+ | |||
+ | Ouvrir le fichier /// | ||
+ | |||
+ | Pour prendre en compte le changement sans redémarrer le service : | ||
+ | |||
+ | <code bash> | ||
+ | sudo -u ejabberd ejabberdctl reload_config | ||
+ | </ | ||
+ | |||
+ | Autre possibilité : augmenter temporairement la verbosité avec la commande : | ||
+ | <code bash> | ||
+ | sudo -u ejabberd ejabberdctl set_loglevel loglevel | ||
+ | </ | ||
+ | |||
+ | |||
+ | ==== Relancer le service ==== | ||
+ | |||
+ | Recharger le service sans interruption (après avoir modifié une configuration par exemple) : | ||
+ | |||
+ | <code bash> | ||
+ | sudo -u ejabberd ejabberdctl reload_config | ||
+ | </ | ||
+ | |||
+ | Sinon, quand on n'a pas le choix, stopper et relancer le service (avec quelques secondes d' | ||
+ | <code bash> | ||
+ | systemctl restart ejabberd | ||
+ | </ | ||
+ | |||
+ | Pour le pont XMPP/IRC Biboumi: | ||
+ | <code bash> | ||
+ | systemctl restart biboumi | ||
+ | </ | ||
+ | |||
+ | ==== Consulter l' | ||
+ | |||
+ | < | ||
+ | |||
+ | La liste exhaustive des commandes possibles : < | ||
+ | |||
+ | </ | ||
+ | |||
+ | **Lister les connexions établies avec d' | ||
+ | |||
+ | <code bash> | ||
+ | sudo -u ejabberd ejabberdctl incoming_s2s_number | ||
+ | sudo -u ejabberd ejabberdctl outgoing_s2s_number | ||
+ | </ | ||
+ | |||
+ | **Nombre de comptes** | ||
+ | |||
+ | Nombre total de comptes créés et nombre de sessions actives. | ||
+ | Attention, il peut y avoir plusieurs sessions simultanées pour un même compte. | ||
+ | |||
+ | <code bash> | ||
+ | sudo -u ejabberd ejabberdctl registered_users chapril.org | wc -l | ||
+ | sudo -u ejabberd ejabberdctl connected_users_number | ||
+ | </ |
admin/services/xmpp.chapril.org.txt · Dernière modification : 2024/03/13 09:55 de pitchum