Sujet: Configuration ejabberd sous Linux Debian
24/05/2007 @ 15:08:35: ovh: Configuration ejabberd sous Linux Debian
Bijour à tous :smile:

J'ai de gros soucis pour l'installation sous Linux Debian du serveur jabber ejabberd, dont pourtant on vante les mérites sur le net :kiki:

Voici la conf par défaut après installation apt-get install ejabberd :
% Default Debian ejabberd.cfg

%override_acls.

%
% ucf section

% Admin user
{acl, admin, {user, "", "localhost"}}.

% Hostname
{hosts, ["localhost"]}.

%

J'ai remplacé par :
% Admin user
{acl, admin, {user, "admin", "serveur"}}.

% Hostname
{hosts, ["serveur"]}.

"serveur" étant le hostname de la machine sur laquelle j'ai installé jabber.
Mais rien ne marche, mais si je reviens en config par défaut, j'ai beau le démarrer, il démarre des binaires du langage erlang oui, mais pas le démon en lui-même, il ne tourne pas !
ejabberd 11825 0.0 0.0 1836 388 ? S 13:26 0:00 /usr/lib/erlang/erts-5.5.4/bin/epmd -daemon
ejabberd 11842 0.0 0.8 21792 8936 pts/0 Sl 13:26 0:00 /usr/lib/erlang/erts-5.5.4/bin/beam -- -root /usr/lib/erlang -progname erl
ejabberd 11848 0.0 0.1 3488 1268 ? Ss 13:26 0:00 /usr/lib/erlang/lib/ssl-3.1/priv/bin/ssl_esock


Qu'est-ce qui cloche ? :ohwell:

Pourtant d'après ce tuto et d'autres, il n'y a rien de compliqué :
http://blog-perso.onzeweb.info/2006/08/25/tutoriel-ejabberd-ubuntu/
Mais un nmap de ma machine me prouve qu'aucun des ports jabber n'est ouvert :mmmfff:

Un grand merci d'avance à ceux qui pourront m'aider. :dawa:
24/05/2007 @ 15:50:30: max: Configuration ejabberd sous Linux Debian
Ejabberd c'est bien, très bien.

Bon, as-tu aussi configuré:

{hosts, [...]}.
{host_config, "public.example.org", [{auth_method, [anonymous, internal]}]}.

et plus bas:

{listen,
{5222, ejabberd_c2s, ..... }
...
}
24/05/2007 @ 16:08:45: ovh: Configuration ejabberd sous Linux Debian
Euh le listen est décommenté donc à priori ça a l'air bon :figti:

Quant à ton host_config ça autorise des accès anonymes ? :totoz:
J'ai activé cette ligne mais ça ne change rien :sad:

Question subsidiaire : dans le nom d'hôte on doit mettre absolument le hostname physique de la machine ou bien on peut inventer un truc genre "jabber.toto.local" ?

Je précise que je n'ai pas d'iptables configuré sur ce poste, tout est donc ouvert et donc ça devrait marcher :gratgrat:

max tu l'as installé via le package debian standard toi ? :oh: Version 1.1.2-6 ?
24/05/2007 @ 16:21:57: max: Configuration ejabberd sous Linux Debian
version 1.1.2-6.

il faut mettre un nom d'hote qui existe vraiment (en local ou sur le vrai ternet), ejabberd a le droit de savoir :wink:


je copie-colle ma config ?
24/05/2007 @ 16:25:26: ovh: Configuration ejabberd sous Linux Debian
max> si tu veux bien ce serait super sympa :love: parce que là je suis complètement perdu :sweat:
Si tu pouvais aussi mettre en gars les éléments que tu as dû paramétré par rapport à la config par défaut ce serait le pied absolu (quoique ça je devrais pouvoir le savoir avec un diff par rapport à mon fichier :dawa: )

En parlant de ça, voici le diff entre mon fichier et la config originale :
diff ejabberd.cfg ejabberd.cfg.orig
9c9
< {acl, admin, {user, "admin", "localhost"}}.
---
> {acl, admin, {user, "", "localhost"}}.
39c39
< %{access, register, [{allow, all}]}.
---
> {access, register, [{allow, all}]}.
42c42
< {access, register, [{deny, all}]}.
---
> %{access, register, [{deny, all}]}.
116c116
< {host_config, "localhost", [{auth_method, [anonymous, internal]}]}.
---
> %{host_config, "public.example.org", [{auth_method, [anonymous, internal]}]}.
127c127
< {language, "fr"}.
---
> {language, "en"}.



Sinon, en lançant le démon à la main, voici ce que j'obtiens comme msg d'erreur en console :
Erlang (BEAM) emulator version 5.5.4 [source] [async-threads:0] [kernel-poll:false]

Eshell V5.5.4 (abort with ^G)
(ejabberd@srv1)1>
=INFO REPORT==== 24-May-2007::16:22:15 ===
application: ejabberd
exited: {bad_return,
{{ejabberd_app,start,[normal,[]]},
{'EXIT',
{badarg,
[{erlang,
port_control,
[stringprep_port,1,"localhost"]},
{stringprep,control,2},
{jlib,nameprep,1},
{ejabberd_auth,auth_modules,1},
{ejabberd_auth,'-start/0-fun-1-',1},
{lists,foreach,2},
{ejabberd_app,start,2},
{application_master,start_it_old,4}]}}}}
type: temporary

Ca parle à quelqu'un ? :kiki:
Vive les langages exotiques :kiki:


Merciii :dawaaa:
24/05/2007 @ 16:49:25: max: Configuration ejabberd sous Linux Debian
je me rappelle que j'avais eu du mal à traduire leur log :wink:


Bon, commentons mon fichier de configuration:


Qui sont les admins des virtual host:

{acl, admin, {user, "xxx","yyyyy.zz"}}.
{acl, admin, {user, "xxx","im.yyyyy.zz"}}.


Quels sont les virtual hosts configurés ?


{hosts, ["yyyyy.zz","im.yyyyy.zz","pub.yyyyy.zz"]}.


Qui peut se connecter/s'inscrire sur ces virtualhosts ?

{host_config, "yyyyy.zz", [{access, register, [{deny, all}]}]}.
{host_config, "im.yyyyy.zz", [{auth_method, internal}]}.
{host_config, "pub.yyyyy.zz", [{auth_method, anonymous},
{allow_multiple_connections, false},
{anonymous_protocol, sasl_anon}]}.


La ça demande un peu plus d'explication:

yyyyy.zz: les inscriptions sont fermés mais si on a un compte, on peut s'y connecter. En fait, il n'y a que moi, c'est pour tester. Mon jabber à moi rien qu'à moi.

im.yyyyy.zz: inscriptions ouvertes, connexion possible si compte valide. Un jabber normal pour tous.

pub.yyyyy.zz: connexion possible avec des comptes 'volants' (= anonymes), qui ne sont actif que pour la session en cours (c'est pour utiliser un chat en ligne)


Continuons avec les ports:


% Listened ports:
{listen,
[
{5222, ejabberd_c2s, [{access, c2s}, {shaper, c2s_shaper}]},
{5223, ejabberd_c2s, [{access, c2s}, ssl, {certfile, "/etc/ejabberd/server.pem"}]},
{5269, ejabberd_s2s_in, [{shaper, s2s_shaper}, {max_stanza_size, 131072}]},
{5280, ejabberd_http, [http_poll, web_admin]}
[{password, "secret"}]}]}
]}.


Le 5280, c'est une interface admin par le web, c'est sympa et pratique.
J'ai configuré le ssl donc plus bas j'ai aussi:


% Use STARTTLS+Dialback for S2S connections
{s2s_use_starttls, true}.
{s2s_certfile, "/etc/ejabberd/server.pem"}.


les modules:

% Used modules:
{modules,
[
{mod_register, [{access, register}]},
{mod_roster, []},
{mod_privacy, []},
{mod_adhoc, []},
{mod_configure, []}, % Depends on mod_adhoc
{mod_configure2, []},
{mod_disco, []},
{mod_stats, []},
{mod_vcard, []},
{mod_offline, []},
{mod_announce, [{access, announce}]}, % Depends on mod_adhoc
{mod_echo, [{host, "echo.localhost"}]},
{mod_private, []},
{mod_irc, []},
{mod_muc, [{access, muc}, {access_create, muc}, {access_admin, muc_admin}]},
{mod_shared_roster, []},
{mod_pubsub, [{access_createnode, pubsub_createnode}]},
{mod_time, []},
{mod_last, []},
{mod_version, []}
]}.



J'ai passé les trucs par défaut en début de document.


Quand il tourne, j'ai ceci dans 'ps':


12405 pts/0 Sl 0:02 /usr/lib/erlang/erts-5.5.2/bin/beam -- -root /usr/lib/erlang -progname erl -- -home /var/lib/ejabb.....
12411 ? Ss 0:00 /usr/lib/erlang/lib/ssl-3.0.12/priv/bin/ssl_esock


et dans netstat -taupen:

tcp 0 0 0.0.0.0:5280 0.0.0.0:* LISTEN 119 28285647 12405/beam
tcp 0 0 0.0.0.0:36772 0.0.0.0:* LISTEN 119 28285628 12405/beam
tcp 0 0 0.0.0.0:5222 0.0.0.0:* LISTEN 119 28285643 12405/beam
tcp 0 0 127.0.0.1:36774 0.0.0.0:* LISTEN 119 28285642 12411/ssl_esock
tcp 0 0 0.0.0.0:5223 0.0.0.0:* LISTEN 119 28285649 12411/ssl_esock
tcp 0 0 0.0.0.0:5269 0.0.0.0:* LISTEN 119 28285645 12405/beam


(119 c'est l'id du compte ejabberd)
24/05/2007 @ 16:54:47: max: Configuration ejabberd sous Linux Debian
J'utilise le paquet erlang 1:11.b.2-4 (et ses amis).

Celui de nouveau debian stable (etch)
24/05/2007 @ 16:56:06: ovh: Configuration ejabberd sous Linux Debian
Un grand merci j'examine ça :dawaaa:

Par contre, il y a vraiment un couac avec le package debian on dirait, parce que j'ai installé ejabberd sur mon post de travail ubuntu et là ça marche direct :itm:

Question subsidiaire (je teste sur l'ubuntu pour le moment alors) : comment on configure un compte jabber dans gaim ? :fou: J'ai beau mettre comme login "admin" ou "admin@mamachine" et le bon pass et le bon serveur of course (le nom de ma machine quoi), ça marche pas :fou: Et c'est quoi ce paramètre "Resource" de gaim ??? :kiki:
24/05/2007 @ 16:59:40: ovh: Configuration ejabberd sous Linux Debian
J'utilise le paquet erlang 1:11.b.2-4 (et ses amis).

Celui de nouveau debian stable (etch)

La voilà l'explication !!!!!!!!!!!!!!!!!! :kiki:

Moi je suis en full testing et donc j'ai 1:11.b.4-2 :kiki:
Et sur ma ubuntu là j'ai en effet la 1:11.b.2-4 !! :oh:

Pfffffff quelle merde :fou: Je vais devoir ajouter stable à mon sources.list et essayer d'installer uniquement ce vieux paquet donc, supaire :fou: Vive Debian :fou:

De plus en plus merdique cette distrib :fou:
24/05/2007 @ 17:03:11: max: Configuration ejabberd sous Linux Debian
Ressource (et pas seulement de gaim), c'est pour donner une information en plus quand tu utilises un même compte à plusieur endroit.

TU peux mettre gaim pour dire que tu utilises gaim ou 'bureau' pour dire que tu es au bureau, ....


Par exemple, mon JID acutellement est:
max@im.choum.be/Bureau
et comme j'ai fais mumuse avec mon gsm, il y a aussi un
max@im.choum.be/GSM
en ligne.

Tu mets ce que tu veux.

Si tu veux tester, tu peux créer un compte sur im.choum.be pour voir si c'est toi, le mauvais oeil, gaim ou la chaleur du printemps qui t'empêche de maitriser ce sac de noeuds (car s'en est un, il y a plusieurs concepts à assimiler d'un coup).

Pour les paquets, c'est du debian pure, de stable en stable (sarge => etch, sans modification dans les fichiers de configs)
24/05/2007 @ 17:05:50: max: Configuration ejabberd sous Linux Debian
pour tester la bonne communication entre ton serveur et les autres, gmail est là aussi ;-0
24/05/2007 @ 17:10:26: ovh: Configuration ejabberd sous Linux Debian
OK pour gaim merci, ça marche sur im.choum.be :dawa:
Par contre je vois personne de plus dans ma liste, snormal ? :oh:
Ah ben oué chuis con, si je rajoute pas de contact, forcément :kiki:

Un grand merci max :zoubi: :dawa:
24/05/2007 @ 17:27:22: ovh: Configuration ejabberd sous Linux Debian
Grâce à notre max chéri, voici qu'il a trouvé la cause de tous mes soucis :
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=421986

Il s'agit bel et bien d'un bug dû à la nouvelle version d'erlang !!! :kiki:
24/05/2007 @ 17:39:46: philfr: Configuration ejabberd sous Linux Debian
C'est pour ça que la distro s'appelle testing aussi... :kiki:
24/05/2007 @ 18:00:45: cauet: Configuration ejabberd sous Linux Debian
philfr à pas tort..
24/05/2007 @ 18:32:23: ovh: Configuration ejabberd sous Linux Debian
Bah non justement, merde quoi, la unstable est censée être celle où ça peut planter, mais normalement la testing ça allait :kiki: Et c'est la seule solution pour avoir des logiciels à jour ! Des upgrades tous les 12 mois en stable quand tout va bien (à part les patchs de sécu), non merci :kiki:
Avec Debian pour suivre l'évolution des logiciels on est un peu obligé d'être en testing je trouve :spamafote:

Evidemment maintenant une nouvelle version stable vient de sortir donc ça va, mais la prochaine ce sera dans 6 mois ou un an, super... :roll:
24/05/2007 @ 18:35:07: Altar: Configuration ejabberd sous Linux Debian
Je suis d'accord avec ovh quand un paquet est broken, il ne devrait pas passer le stade de l'unstable :oh:
24/05/2007 @ 20:13:00: philfr: Configuration ejabberd sous Linux Debian
Je suis d'accord avec ovh quand un paquet est broken, il ne devrait pas passer le stade de l'unstable :oh:


Avec unstable, tu risques d'avoir des dépendances foireuses, et des upgrades de lib qui cassent tout.

Avec testing, tu risques juste d'avoir des packages qui ne fonctionnent pas correctement, comme dans le cas présent.

Avec stable, c'est du béton.

C'est la communauté des utilisateurs (nous) qui teste unstable et testing avant que ça devienne stable. Pas une boîte avec des gens payés pour. Et pour permettre un release stable, il faut une phase de freeze que tu ne peux faire sur unstable sans bloquer l'évolution. D'où la nécessité de testing, qui suffit en général largement.

Si tu trouves stable obsolète et testing trop instable, utilise ([kx]|ed)?ubuntu, mandriva ou autre... Mais tu risques presque autant de problèmes qu'avec testing, puisque ce n'est pas beaucoup mieux testé... Ou alors, tu n'auras pas autant de packages à disposition :spamafote:
25/05/2007 @ 11:22:26: ovh: Configuration ejabberd sous Linux Debian
Vu sur http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=421986 :
That has been fixed in unstable weeks ago. You would have found out
that by reading the existing bug reports.

Il manque pas d'air celui-là !

Si c'est fixé depuis des semaines, pourquoi ne l'ont-ils pas encore mis à jour dans testing alors bordel ??????!!!!!!
25/05/2007 @ 11:34:21: zion: Configuration ejabberd sous Linux Debian


Si tu trouves stable obsolète et testing trop instable, utilise ([kx]|ed)?ubuntu, mandriva ou autre... Mais tu risques presque autant de problèmes qu'avec testing, puisque ce n'est pas beaucoup mieux testé... Ou alors, tu n'auras pas autant de packages à disposition :spamafote:


*shocked*
Retour