Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
informatique:applications:ejabberd-service-de-messagerie-jabber-xmpp [2023/02/10 23:48] – supprimée - modification externe (Unknown date) | informatique:applications:ejabberd-service-de-messagerie-jabber-xmpp [2023/02/10 23:48] (Version actuelle) – ↷ Liens modifiés en raison d'un déplacement. Cédric ABONNEL | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | ====== ejabberd - service de messagerie Jabber XMPP ====== | ||
+ | {{ informatique: | ||
+ | |||
+ | Il est nécessaire d' | ||
+ | * un service Apache - **httpd** | ||
+ | * un service de base de données - **mariaDb** | ||
+ | * un système d' | ||
+ | |||
+ | ===== Installer ===== | ||
+ | |||
+ | Pour installer **ejabberd** sous la distribution Linux **Debian**, il suffit de taper en ligne de commandes : | ||
+ | |||
+ | sudo apt install ejabberd | ||
+ | | ||
+ | {{informatique: | ||
+ | |||
+ | Un service ''/ | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ===== Installer la base de données ===== | ||
+ | |||
+ | **ejabberd** est compatible avec plusieurs SGBD. J' | ||
+ | |||
+ | --- // https:// | ||
+ | |||
+ | Crééer l' | ||
+ | |||
+ | echo "GRANT ALL ON ejabberd.* TO ' | ||
+ | |||
+ | |||
+ | Créer la base de données associée à l' | ||
+ | |||
+ | echo " | ||
+ | |||
+ | ===== Mettre à jour ===== | ||
+ | |||
+ | Vérifier la dernière version disponible à la page de [[https:// | ||
+ | |||
+ | Vérifier les modifications a effectuer sur la page de la [[https:// | ||
+ | |||
+ | <code BASH> | ||
+ | sudo systemctl stop ejabberd | ||
+ | wget https:// | ||
+ | sudo apt install ./ | ||
+ | sudo systemctl start ejabberd | ||
+ | </ | ||
+ | |||
+ | <note important> | ||
+ | |||
+ | ===== Log ===== | ||
+ | |||
+ | {{ informatique: | ||
+ | |||
+ | Les fichiers logs sont présents dans le dossier ''/ | ||
+ | |||
+ | Après la mise à jour en 21.07, ils se trouvent dans ''/ | ||
+ | |||
+ | <WRAP clear/> | ||
+ | |||
+ | |||
+ | |||
+ | ===== Configurer ===== | ||
+ | |||
+ | Le nom du serveur doit être déclaré dans les DNS et dans le fichiers ''/ | ||
+ | |||
+ | Le fichier de configuration est au format YML. Il doit être déposé dans le chemin ''/ | ||
+ | Après la mise à jour en 21.07, le dossier de configuration s'est trouvé dans ''/ | ||
+ | |||
+ | Dans l' | ||
+ | * nom de serveur retenu pour le service : im.domain.tld, | ||
+ | * adresse ip : 45.54.65.42 | ||
+ | |||
+ | ===== Configurer les champs DNS ===== | ||
+ | |||
+ | Déclarer les champs DNS suivants : | ||
+ | |||
+ | < | ||
+ | im IN A 45.54.65.42 | ||
+ | *.im IN A 45.54.65.42 | ||
+ | </ | ||
+ | |||
+ | ===== Configurer le SSL ===== | ||
+ | |||
+ | Je vous conseille d' | ||
+ | |||
+ | <code BASH> | ||
+ | sudo sh -c "cat / | ||
+ | </ | ||
+ | |||
+ | Par conséquence, | ||
+ | |||
+ | < | ||
+ | certfiles: | ||
+ | - " | ||
+ | </ | ||
+ | |||
+ | ===== Configurer le host ===== | ||
+ | |||
+ | Il faut définir les hosts sur lesquels ejabberd écoute : | ||
+ | < | ||
+ | hosts: | ||
+ | - " | ||
+ | - " | ||
+ | </ | ||
+ | |||
+ | |||
+ | Le fichier peut prendre en compte autant de domaine que l'on souhaite avec des cas de configuration distinct. C'est le principe du '' | ||
+ | |||
+ | < | ||
+ | host_config: | ||
+ | im.domain.tld: | ||
+ | ... | ||
+ | xmpp.domain2.tld: | ||
+ | ... | ||
+ | </ | ||
+ | |||
+ | ===== Configurer le type d' | ||
+ | |||
+ | On peut se baser sur une authentification **anonymous**, | ||
+ | |||
+ | --- // | ||
+ | |||
+ | < | ||
+ | host_config: | ||
+ | im.domain.tld: | ||
+ | auth_method: | ||
+ | xmpp.domain2.tld: | ||
+ | auth_method: | ||
+ | sql_type: odbc | ||
+ | sql_server: " | ||
+ | </ | ||
+ | |||
+ | ===== Configurer les modules ===== | ||
+ | |||
+ | < | ||
+ | ## Configuration of modules that are common to all vhosts | ||
+ | modules: | ||
+ | mod_roster: | ||
+ | mod_configure: | ||
+ | mod_disco: | ||
+ | mod_private: | ||
+ | mod_time: | ||
+ | mod_last: | ||
+ | mod_version: | ||
+ | |||
+ | append_host_config: | ||
+ | ## Add some modules to vhost one: | ||
+ | im.domain.tld: | ||
+ | modules: | ||
+ | mod_muc: | ||
+ | host: conference.im.domain.tld | ||
+ | mod_ping: {} | ||
+ | ## Add a module just to vhost two: | ||
+ | xmpp.domain2.tld: | ||
+ | modules: | ||
+ | mod_muc: | ||
+ | host: conference.xmpp.domain2.tld | ||
+ | </ | ||
+ | |||
+ | ===== Configurer les options ===== | ||
+ | |||
+ | < | ||
+ | language: fr | ||
+ | |||
+ | </ | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ===== Configurer le module audio/ | ||
+ | |||
+ | Le module '' | ||
+ | |||
+ | < | ||
+ | | ||
+ | ... | ||
+ | | ||
+ | | ||
+ | | ||
+ | - | ||
+ | host: 0.0.0.0 | ||
+ | port: 3478 | ||
+ | type: stun | ||
+ | | ||
+ | | ||
+ | - | ||
+ | host: 0.0.0.0 | ||
+ | port: 3478 | ||
+ | type: turn | ||
+ | | ||
+ | | ||
+ | - | ||
+ | host: im.domain.tdl | ||
+ | port: 5349 | ||
+ | type: stuns | ||
+ | | ||
+ | | ||
+ | - | ||
+ | host: im.domain.tdl | ||
+ | port: 5349 | ||
+ | type: turns | ||
+ | | ||
+ | | ||
+ | |||
+ | </ |