braveo:docinstallejabberd
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édente | ||
| braveo:docinstallejabberd [2014/05/20 21:55] – arnaudr | braveo:docinstallejabberd [2024/04/16 22:20] (Version actuelle) – modification externe 127.0.0.1 | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| + | =====installation du serveur jabber (ejabberd) ===== | ||
| + | ejabberd est un serveur **Jabber/ | ||
| + | |||
| + | **Qu' | ||
| + | |||
| + | Le nom ejabberd vient de Erlang JABBER Daemon. Jabber est l' | ||
| + | |||
| + | |||
| + | |||
| + | ===== Configuration du DNS ===== | ||
| + | |||
| + | Pour que notre serveur fonctionne correctement, | ||
| + | le serveur dns (bind). | ||
| + | < | ||
| + | |||
| + | jabber IN A 92.xxx.xxx.xxx | ||
| + | _jabber._tcp.mdl29.net. IN SRV | ||
| + | _jabber._tcp IN SRV 5 0 5269 | ||
| + | _xmpp-server IN SRV 5 0 5269 | ||
| + | _xmpp-client._tcp IN SRV 5 0 5222 | ||
| + | </ | ||
| + | |||
| + | ===== Installation | ||
| + | |||
| + | Pour l' | ||
| + | |||
| + | [[http:// | ||
| + | |||
| + | [[http:// | ||
| + | aptitude install ejabberd | ||
| + | |||
| + | paramétrage du serveur (avec connexion sur le ldap bien sûr) : | ||
| + | |||
| + | ça se passe dans le fichier / | ||
| + | < | ||
| + | {loglevel, 5}. | ||
| + | {hosts, [" | ||
| + | {host_config, | ||
| + | |||
| + | |||
| + | {listen, | ||
| + | [ | ||
| + | {5222, ejabberd_c2s, | ||
| + | {access, c2s}, | ||
| + | {shaper, c2s_shaper}, | ||
| + | {max_stanza_size, | ||
| + | starttls_required, | ||
| + | ]}, | ||
| + | | ||
| + | |||
| + | %%Ancienne méthode de connexion SSL (obsolète) | ||
| + | | ||
| + | {access, c2s}, | ||
| + | {shaper, c2s_shaper}, | ||
| + | {max_stanza_size, | ||
| + | tls, {certfile, "/ | ||
| + | ]}, | ||
| + | |||
| + | |||
| + | {5269, ejabberd_s2s_in, | ||
| + | | ||
| + | | ||
| + | ]}, | ||
| + | |||
| + | |||
| + | %%Passerelle XMPP | ||
| + | |||
| + | {{5200, " | ||
| + | {access, all}, | ||
| + | {host, " | ||
| + | ]}, | ||
| + | |||
| + | |||
| + | |||
| + | %%Passerelle identica | ||
| + | |||
| + | {{5201, " | ||
| + | {access, all}, | ||
| + | {host, " | ||
| + | ]}, | ||
| + | |||
| + | %%Passerelle twitter | ||
| + | |||
| + | {{5202, " | ||
| + | {access, all}, | ||
| + | {host, " | ||
| + | ]}, | ||
| + | |||
| + | %%Passerelle msn | ||
| + | |||
| + | {{5203, " | ||
| + | {access, all}, | ||
| + | {host, " | ||
| + | ]}, | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | ]} | ||
| + | |||
| + | ]}. | ||
| + | {s2s_use_starttls, | ||
| + | {s2s_certfile, | ||
| + | %{auth_method, | ||
| + | {ldap_servers, | ||
| + | {ldap_encrypt, | ||
| + | {ldap_port, 389}. | ||
| + | {ldap_rootdn, | ||
| + | {ldap_password, | ||
| + | {ldap_base, " | ||
| + | {ldap_uids, [{" | ||
| + | {ldap_filter, | ||
| + | {shaper, normal, {maxrate, 1000}}. | ||
| + | {shaper, fast, {maxrate, 50000}}. | ||
| + | {acl, admin, {user, " | ||
| + | {acl, local, {user_regexp, | ||
| + | {access, max_user_sessions, | ||
| + | {access, c2s, [{deny, blocked}, | ||
| + | | ||
| + | {access, c2s_shaper, [{none, admin}, | ||
| + | {normal, all}]}. | ||
| + | {access, s2s_shaper, [{fast, all}]}. | ||
| + | {access, announce, [{allow, admin}]}. | ||
| + | {access, configure, [{allow, admin}]}. | ||
| + | {access, muc_admin, [{allow, admin}]}. | ||
| + | {access, muc, [{allow, all}]}. | ||
| + | {access, register, [{deny, all}]}. | ||
| + | {access, pubsub_createnode, | ||
| + | {language, " | ||
| + | {modules, | ||
| + | [ | ||
| + | {mod_http_bind, | ||
| + | | ||
| + | ]}, | ||
| + | {mod_adhoc, | ||
| + | {mod_announce, | ||
| + | {mod_caps, | ||
| + | {mod_configure, | ||
| + | {mod_ctlextra, | ||
| + | {mod_disco, | ||
| + | %%{mod_echo, | ||
| + | {mod_irc, [{access, all}, {default_encoding, | ||
| + | %%{mod_irc, | ||
| + | {mod_last, | ||
| + | {mod_muc, | ||
| + | %%{host, " | ||
| + | {access, muc}, | ||
| + | {access_create, | ||
| + | {access_persistent, | ||
| + | {access_admin, | ||
| + | {anonymous, true}, | ||
| + | {max_users, 100} | ||
| + | ]}, | ||
| + | {mod_muc_log, | ||
| + | |||
| + | |||
| + | {mod_offline, | ||
| + | {mod_privacy, | ||
| + | {mod_private, | ||
| + | {mod_proxy65, | ||
| + | {access, local}, | ||
| + | {shaper, c2s_shaper} | ||
| + | ]}, | ||
| + | {mod_pubsub, | ||
| + | {access_createnode, | ||
| + | {ignore_pep_from_offline, | ||
| + | {last_item_cache, | ||
| + | {max_items_node, | ||
| + | {plugins, [" | ||
| + | ]}, | ||
| + | {mod_register, | ||
| + | |||
| + | {welcome_message, | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | |||
| + | {registration_watchers, | ||
| + | |||
| + | {access, register} | ||
| + | ]}, | ||
| + | {mod_roster, | ||
| + | %%{mod_service_log, | ||
| + | %%{mod_shared_roster, | ||
| + | {mod_stats, | ||
| + | {mod_time, | ||
| + | {mod_vcard, | ||
| + | {mod_version, | ||
| + | ]}. | ||
| + | </ | ||
| + | Voilà, seule une personne inscrite dans le ldap peut se connecter sur le serveur jabber. | ||
| + | |||
| + | Activer SSL / TLS ( méthode auto-certification ) \\ | ||
| + | |||
| + | openssl req -new -x509 -newkey rsa:1024 -days 3650 -keyout privkey.pem -out server.pem | ||
| + | openssl rsa -in privkey.pem -out privkey.pem | ||
| + | cat privkey.pem >> server.pem | ||
| + | |||
| + | |||
| + | <note important> | ||
| + | Common Name (eg, YOUR name) : mdl29.net</ | ||
| + | |||
| + | Création d'un utilisateur de base pour l' | ||
| + | ejabberdctl register nom_user mdl29.net mot_de_passe | ||
| + | |||
| + | Suppression d'un utilisateur du roster | ||
| + | ejabberdctl unregister nomducompte mdl29.net | ||
| + | Interface web | ||
| + | | ||
| + | L' | ||
| + | Il ne reste plus qu'à lancer le serveur jabber : | ||
| + | / | ||
| + | et se connecter dessus. | ||
| + | |||
| + | =====La base de données ===== | ||
| + | Ejabberd supporte un nombre intéressant de base de données. Mais **Mnesia** est la base de données native de ejabberd fournit par le langage Erlang. | ||
| + | Il est fortement conseillé de faire des sauvegarde régulière de celle-ci. | ||
| + | |||
| + | * Sauvegarder la base de données | ||
| + | |||
| + | | ||
| + | |||
| + | * Restaurer la base de données | ||
| + | |||
| + | | ||
| + | |||
