« Portail:Administrateur » : différence entre les versions
m (→Rendre accessible : Mise en forme + Liens XEP) |
(→Rendre accessible : ajout ports pour coturn) |
||
(12 versions intermédiaires par 2 utilisateurs non affichées) | |||
Ligne 14 : | Ligne 14 : | ||
''Comment installer XMPP sur votre serveur ?'' | ''Comment installer XMPP sur votre serveur ?'' | ||
====YunoHost==== | ====YunoHost==== | ||
Pour ceux qui souhaitent s'autohéberger simplement, un moyen simple et populaire de disposer de son serveur XMPP est d'installer [https://yunohost.org YunoHost]. Le serveur [[metronome]] est automatiquement installé et configuré, et les comptes se gèrent via l'interface graphique d'administration. Quelques manipulations additionelles sont recommandées pour bénéficier des XEP complémentaires | Pour ceux qui souhaitent s'autohéberger simplement, un moyen simple et populaire de disposer de son serveur XMPP est d'installer [https://yunohost.org YunoHost]. Le serveur [[metronome]] est automatiquement installé et configuré, et les comptes se gèrent via l'interface graphique d'administration [https://yunohost.org/#/XMPP_fr]. Quelques manipulations additionelles sont recommandées pour bénéficier des XEP complémentaires [https://github.com/YunoHost/issues/issues/1607]. | ||
====Installation sur votre serveur==== | ====Installation sur votre serveur==== | ||
Ligne 68 : | Ligne 68 : | ||
''Vous avez fini l'installation de votre serveur ? Bravo ! Nous vous recommandons de vérifier ou finaliser la configuration avec les points ci-dessous.'' | ''Vous avez fini l'installation de votre serveur ? Bravo ! Nous vous recommandons de vérifier ou finaliser la configuration avec les points ci-dessous.'' | ||
* '''DNS''' : voir [[Configuration_des_DNS|guide configuration des DNS]]. | * '''DNS''' : voir [[Configuration_des_DNS|guide configuration des DNS]]. | ||
* '''Pare-feu''' : vérifier que les ports '''5222/tcp''', '''5269/tcp''' sont bien ouverts sur le serveur, voire la Box (Routeur). | * '''Pare-feu''' : vérifier que les ports '''5222/tcp''', '''5269/tcp''' sont bien ouverts sur le serveur, voire la Box (Routeur). Pour les appels audio/vidéo, vérifier également '''49152:65535/udp''', '''3478,5349,3479,5350/tcp+udp''' | ||
* '''XEP / fonctionnalités populaires''' : | * '''XEP / fonctionnalités populaires''' : | ||
** HTTP File Upload ([https://xmpp.org/extensions/xep-0363.html XEP-0363]) : permet de partager facilement des images / fichiers dans vos discussions. | ** HTTP File Upload ([https://xmpp.org/extensions/xep-0363.html XEP-0363]) : permet de partager facilement des images / fichiers dans vos discussions. | ||
Ligne 76 : | Ligne 76 : | ||
** [[BOSH]] : pour pouvoir intégrer XMPP dans <app>Nextcloud</app> par exemple ; et de manière générale accéder au serveur XMPP lorsque le port '''5222/tcp''' est filtré. | ** [[BOSH]] : pour pouvoir intégrer XMPP dans <app>Nextcloud</app> par exemple ; et de manière générale accéder au serveur XMPP lorsque le port '''5222/tcp''' est filtré. | ||
* '''Client web''' : pour faciliter l'accès à votre service aux personnes qui ne veulent/peuvent pas installer de logiciel sur leur ordinateur, il peut être utile de proposer un accès à XMPP via un client web. | * '''Client web''' : pour faciliter l'accès à votre service aux personnes qui ne veulent/peuvent pas installer de logiciel sur leur ordinateur, il peut être utile de proposer un accès à XMPP via un client web. | ||
** [[Conversejs]] est le client actuellement le plus adapté. | ** [[Conversejs]] est le client actuellement le plus adapté. Le mode ''overlay'' permet d'afficher une zone de chat sur votre site perso par exemple (comme Jappix Mini autrefois). | ||
** [[Movim]] fournit d'autres fonctionnalités (réseau social) ; premier client à implémenter les réactions ([https://xmpp.org/extensions/xep-0444.html XEP-0444]). | ** [[Movim]] fournit d'autres fonctionnalités (réseau social) ; premier client à implémenter les réactions ([https://xmpp.org/extensions/xep-0444.html XEP-0444]). | ||
Ligne 98 : | Ligne 98 : | ||
==Administrer / optimiser== | ==Administrer / optimiser== | ||
''Votre serveur est installé et configuré ? Voici quelques ressources utiles pour assurer le bon fonctionnement de votre serveur.'' | ''Votre serveur est installé et configuré ? Voici quelques ressources utiles pour assurer le bon fonctionnement de votre serveur.'' | ||
* Monitorer : grafana (exemple | * Monitorer : [https://grafana.com/ grafana] (exemple du serveur JabberFR https://stats.jabberfr.org/). | ||
* Protection contre le SPIM : [https://github.com/JabberSPAM/blacklist/blob/master/README.fr.md liste noire des mauvais serveurs] | * Protection contre le SPIM : [https://github.com/JabberSPAM/blacklist/blob/master/README.fr.md liste noire des mauvais serveurs]. | ||
* Vérifier les XEP effectivement fonctionnelles sur un serveur : outil [https://compliance.conversations.im/ en ligne] ou [https://github.com/iNPUTmice/caas à installer soi-même] | * Vérifier les XEP effectivement fonctionnelles sur un serveur : outil [https://compliance.conversations.im/ en ligne] ou [https://github.com/iNPUTmice/caas à installer soi-même]. | ||
* Inscrire votre serveur sur [https://observe.jabber.network/ observe.jabber.network] | * Inscrire votre serveur sur [https://observe.jabber.network/ observe.jabber.network] pour être averti⋅e en cas de problème. | ||
* Configurer les modules limitant la consommation sur [[Optimisation_mobile|téléphone | * Configurer les modules limitant la consommation sur [[Optimisation_mobile|téléphone mobile]]. | ||
* Configurer le système d'invitation, pour inviter des nouveaux utilisateurs plus facilement [https://blog.prosody.im/great-invitations/]. | |||
* ... | * ... | ||
* (outils jabberfr à partager ?) | * (outils jabberfr à partager ?) | ||
Ligne 119 : | Ligne 120 : | ||
====Presence web==== | ====Presence web==== | ||
Installer un composant [[Omnipresence]] permet à vos utilisateurs d'afficher l'état de leur compte XMPP sur le Web. | Installer un composant [[Omnipresence]] permet à vos utilisateurs d'afficher l'état de leur compte XMPP sur le Web. | ||
Voir d'autres possibilités sur la page [[Intégration_web]]. | |||
====Proposer l'authentification via XMPP (http-auth, [ | ====Proposer l'authentification via XMPP (http-auth, [https://xmpp.org/extensions/xep-0070.html XEP-0070] )==== | ||
Configurer les autres services que vous administrez pour proposer à vos utilisateurs de s'authentifier simplement via XMPP : | Configurer les autres services que vous administrez pour proposer à vos utilisateurs de s'authentifier simplement via XMPP : | ||
* Plugin Wordpress : https://wordpress.org/plugins/xmpp-auth/ | * Plugin Wordpress : https://wordpress.org/plugins/xmpp-auth/ . | ||
* bibliothèque PHP : ??? | * bibliothèque PHP : ??? | ||
* bibliothèque Go : https://git.kingpenguin.tk/chteufleur/HTTPAuthentificationOverXMPP | * bibliothèque Go : https://git.kingpenguin.tk/chteufleur/HTTPAuthentificationOverXMPP (explications : https://blog.agayon.be/xmpp_auth_django.html ; demo : https://demo.agayon.be/ ). | ||
* ... | * ... | ||
====Chat Peertube==== | |||
Ce plugin pour PeerTube permet d'intégrer un chat XMPP (ConverseJS) pour échanger avec les visiteurs : https://github.com/JohnXLivingston/peertube-plugin-livechat | |||
====Autres protocoles==== | ====Autres protocoles==== | ||
XMPP est objectivement le meilleur moyen de communication | XMPP est objectivement le meilleur moyen de communication instantanée, mais ce n'est peut être pas l'avis de l'ensemble de votre environnement. Voici quelques moyens de s'interfacer avec le reste du monde.'' | ||
* IRC : | * IRC : [[biboumi]]. | ||
* WhatsApp: [https://git.theta.eu.org/eta/whatsxmpp whatsxmpp] | * Signal : [https://gitlab.com/nicocool84/spectrum2_signald spectrum2_signald] | ||
* IRC, Mattermost, Matrix, Discord, Slack, ... : | * WhatsApp : [https://git.theta.eu.org/eta/whatsxmpp whatsxmpp]. | ||
* IRC, Mattermost, Matrix, Discord, Slack, ... : [https://github.com/42wim/matterbridge matterbridge]. | |||
(voir les [[Passerelles]]) | |||
====Faire connaitre votre serveur==== | ====Faire connaitre votre serveur==== |
Version du 31 août 2024 à 16:41
Vous pouvez également suggérer des améliorations sur sa page de discussion.
Où en venant en discuter sur le salon dédié : wiki@chat.jabberfr.org (client web) !
Ce portail rassemble les ressources pour vous aider à mettre en place et administrer votre serveur XMPP.
Installer
Comment installer XMPP sur votre serveur ?
YunoHost
Pour ceux qui souhaitent s'autohéberger simplement, un moyen simple et populaire de disposer de son serveur XMPP est d'installer YunoHost. Le serveur metronome est automatiquement installé et configuré, et les comptes se gèrent via l'interface graphique d'administration [1]. Quelques manipulations additionelles sont recommandées pour bénéficier des XEP complémentaires [2].
Installation sur votre serveur
Il existe plusieurs serveurs XMPP, à utiliser suivant votre besoin :
Logiciel | Forces | Faiblesses | Plateformes | Licence |
---|---|---|---|---|
ejabberd | xxx | xxx | GPLv2 | |
prosody | xxx | xxx | MIT | |
openfire | seul serveur pour Windows | xxx | Apache 2.0 | |
metronome | xxx | xxx | source | ISC/MIT |
Voir la liste détaillée des serveurs.
Si vous aimez Docker, une possibilité est d'utiliser l'initiative Snikket pour simplifier la mise en service d'un serveur XMPP.
Rendre accessible
Vous avez fini l'installation de votre serveur ? Bravo ! Nous vous recommandons de vérifier ou finaliser la configuration avec les points ci-dessous.
- DNS : voir guide configuration des DNS.
- Pare-feu : vérifier que les ports 5222/tcp, 5269/tcp sont bien ouverts sur le serveur, voire la Box (Routeur). Pour les appels audio/vidéo, vérifier également 49152:65535/udp, 3478,5349,3479,5350/tcp+udp
- XEP / fonctionnalités populaires :
- HTTP File Upload (XEP-0363) : permet de partager facilement des images / fichiers dans vos discussions.
- Appels audio/vidéo avec Conversations :
- S'assurer que le serveur supporte la XEP-0215.
- Configurer un serveur STUN/TURN (todo).
- BOSH : pour pouvoir intégrer XMPP dans <app>Nextcloud</app> par exemple ; et de manière générale accéder au serveur XMPP lorsque le port 5222/tcp est filtré.
- Client web : pour faciliter l'accès à votre service aux personnes qui ne veulent/peuvent pas installer de logiciel sur leur ordinateur, il peut être utile de proposer un accès à XMPP via un client web.
- Conversejs est le client actuellement le plus adapté. Le mode overlay permet d'afficher une zone de chat sur votre site perso par exemple (comme Jappix Mini autrefois).
- Movim fournit d'autres fonctionnalités (réseau social) ; premier client à implémenter les réactions (XEP-0444).
Administrer / optimiser
Votre serveur est installé et configuré ? Voici quelques ressources utiles pour assurer le bon fonctionnement de votre serveur.
- Monitorer : grafana (exemple du serveur JabberFR https://stats.jabberfr.org/).
- Protection contre le SPIM : liste noire des mauvais serveurs.
- Vérifier les XEP effectivement fonctionnelles sur un serveur : outil en ligne ou à installer soi-même.
- Inscrire votre serveur sur observe.jabber.network pour être averti⋅e en cas de problème.
- Configurer les modules limitant la consommation sur téléphone mobile.
- Configurer le système d'invitation, pour inviter des nouveaux utilisateurs plus facilement [3].
- ...
- (outils jabberfr à partager ?)
Connecter
S'ouvrir sur le monde extérieur.
Presence web
Installer un composant Omnipresence permet à vos utilisateurs d'afficher l'état de leur compte XMPP sur le Web. Voir d'autres possibilités sur la page Intégration_web.
Proposer l'authentification via XMPP (http-auth, XEP-0070 )
Configurer les autres services que vous administrez pour proposer à vos utilisateurs de s'authentifier simplement via XMPP :
- Plugin Wordpress : https://wordpress.org/plugins/xmpp-auth/ .
- bibliothèque PHP : ???
- bibliothèque Go : https://git.kingpenguin.tk/chteufleur/HTTPAuthentificationOverXMPP (explications : https://blog.agayon.be/xmpp_auth_django.html ; demo : https://demo.agayon.be/ ).
- ...
Chat Peertube
Ce plugin pour PeerTube permet d'intégrer un chat XMPP (ConverseJS) pour échanger avec les visiteurs : https://github.com/JohnXLivingston/peertube-plugin-livechat
Autres protocoles
XMPP est objectivement le meilleur moyen de communication instantanée, mais ce n'est peut être pas l'avis de l'ensemble de votre environnement. Voici quelques moyens de s'interfacer avec le reste du monde.
- IRC : biboumi.
- Signal : spectrum2_signald
- WhatsApp : whatsxmpp.
- IRC, Mattermost, Matrix, Discord, Slack, ... : matterbridge.
(voir les Passerelles)
Faire connaitre votre serveur
Si vous souhaitez permettre à des personnes en dehors de vos connaissances d'utiliser votre serveur, alors vous devriez ajouter votre serveur aux annuaires XMPP. Il n'y a pas un annuaire centralisé mais les 2 principaux sont sur xmpp.net et jabberes.org.
Vous pourrez également considérer de rejoindre le collectif des CHATONS pour rendre service à ceux qui cherchent un petit serveur mais qui ne peuvent pas s'héberger eux-mêmes !
Si vous ne trouvez pas de réponse à vos questions, vous pouvez demander de l'aide sur le salon de JabberFR jabberfr@chat.jabberfr.org ou client web