Jabber LDAP Schema

Seit einigen Tagen betreibe ich einen kleinen Jabber-Server. Zum Einsatz kommt ejabberd (Community). Da ich die eMail/FTP/Proxy-Accounts zentral mittels LDAP verwalte habe ich kleines Schema geschrieben, welches Jabber-Accounts nahtlos integriert. Das Schema erlaubt individuelle JIDs für die Accounts sowie eine Schalter, ob der entsprechende Account Jabber verwenden darf oder nicht.

Download jabber schema

 

Die Einstellungen für ejabberd.cfg sehen folgendermaßen aus:

%% Authentication using LDAP
%%
{auth_method, ldap}.
%%
%% List of LDAP servers:
{ldap_servers, [”192.168.123.1”]}.
%%
%% Encryption of connection to LDAP servers (LDAPS):
%%{ldap_encrypt, tls}.
%%
%% Port connect to LDAP server:
{ldap_port, 389}.
%%
%% LDAP manager:
{ldap_rootdn, “cn=jabber,dc=perversia,dc=net”}.
%%
%% Password to LDAP manager:
{ldap_password, “XXX”}.
%%
%% Search base of LDAP directory:
{ldap_base, “o=hosting,dc=perversia,dc=net”}.
%%
%% LDAP attribute that holds user ID:
{ldap_uids, [{”jabberID”, “%u@%d”}]}.
%%
%% LDAP filter:
{ldap_filter, “(objectClass=posixAccount)(objectClass=jabberAccount)”}.
{ldap_local_filter, {equal, {”jabberAccess”,[”TRUE”]}}}.

 

Leider habe ich es noch nicht geschafft ejabberd beizubringen nach Admin-Accounts zu suchen. Daher müssen diese weiterhin manuell gesetzt werden. Das gilt auch für Domains. Ideal wäre natürlich, wenn ejabberd auch nach Domains und Admin-Accounts suchen und neue automatisch aufnehmen würde.

Sonstiges