PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : openwebmail und ldap



Manfred Werner
30.10.06, 12:42
Hallo Forum,
ich habe einen Mailserver auf Basis des Suse Linux Enterprise Server 9 mit SP2 aufgesetzt. Sowohl der Versand von Mails über Smtp als auch der Empfang von Mails über Pop3 funktioniert reibungslos. Auch die Anbindung von Windows Clients (Outlook) rockt ganz ordentlich. Der SLES9 verwaltet die Benutzer standsrtmäßig über LDAP. Die Benutzer werden mit YAST angelegt. Auch das funktioniert alles wie es soll.
Nun zu meiner Frage. Ich wollte den Benutzern zusätzlich eine Webmailoberfläche zur Verfügung stellten, damit Sie im Urlaubs oder sonsigen Abwesenheitsfalle eine automatische Abwesenheitsmail oder eine Weiterleitungen an die Vertretung generieren können. Dazu habe ich mal OpenWebmail installiert weil dieses das angeblich kann. Im Werbbrowser geht auch das Anmeldefenster von OW auf. Beim anmelden bekomme ich aber immer die Fehlermeldeun dass das passwort falsch ist. Ich bin sicher dass ich irgendwo einen eintrag übersehen habe, weiß aber nicht wo. :ugly:
Hier mal die openwebmail. conf

#
# Open WebMail configuration file
#
# This file contains just the overrides from defaults/openwebmail.conf,
# please make all changes to this file.
#
# This file sets options for all domains and all users.
# To set options on per domain basis, please put them in sites.conf/domainname
# To set options on per user basis, please put them in users.conf/username
#
# Please refer to openwebmail.conf.help for the description of each option
#
domainnames auto
smtpserver 127.0.0.1
smtpport 25
auth_module auth_ldap.pl
mailspooldir /var/spool/mail
use_syshomedir yes
ow_cgidir /srv/www/cgi-bin/openwebmail
ow_cgiurl /cgi-bin/openwebmail
ow_htmldir /srv/www/data/openwebmail
ow_htmlurl /openwebmail
logfile /var/log/openwebmail.log

enable_viruscheck no
enable_spamcheck no
enable_learnspam no

default_iconset Default
default_fscharset none

<default_signature>
--
Open WebMail Project (http://openwebmail.org)
</default_signature>


und die auth_ldap.pl

package ow::auth_ldap;
#
# auth_ldap.pl - authenticate user with LDAP
#
# 2002/04/10 Kelson Vibber, kelson.AT.speed.net (fixed check_userpassword)
# 2002/01/27 Ivan Cerrato, pengus.AT.libero.it
#

########## No configuration required from here ###################

use strict;
use Net::LDAP;
require "modules/tool.pl";

my %conf;
if (($_=ow::tool::find_configfile('etc/auth_ldap.conf', 'etc/defaults/auth_ldap.conf')) ne '') {
my ($ret, $err)=ow::tool::load_configfile($_, \%conf);
die $err if ($ret<0);
} else {
die "Config file auth_ldap.conf not found!";
}

my $ldapHost = $conf{'ldaphost'};
my $ou = "ou=$conf{'ou'}";
my $cn = "cn=$conf{'cn'}";
my $dc1 = "dc=$conf{'dc1'}";
my $dc2 = "dc=$conf{'dc2'}";
my $pwd = $conf{'password'};

my $ldapBase = "$dc1, $dc2";

########## end init ##############################################

# 0 : ok
# -2 : parameter format error
# -3 : authentication system/internal error
# -4 : user doesn't exist
sub get_userinfo {
my ($r_config, $user)=@_;
return(-2, 'User is null') if ($user eq '');

my $ldap = Net::LDAP->new($ldapHost) or return(-3, "LDAP error $@");
$ldap->bind (dn=>"$cn, $dc1, $dc2", password =>$pwd) or return(-3, "LDAP error $@");

my $list = $ldap->search (
base => $ldapBase,
filter => "(&(objectClass=posixAccount)(uid=$user))",
attrs => ['uidNumber','gidNumber','gecos','homeDirectory']
) or return(-3, "LDAP error $@");
undef($ldap); # disconnect


wäre Super wenn mir jemand einen Tipp geben könnte :)

Manfred

Manfred Werner
30.10.06, 14:51
Hallole,
hab die Lösung selbst gefunden,
Probieren geht über Studieren.;)
in der Datei openwebmail.conf mus der Eintrag
auth_module auth_ldap.pl
in
auth_module auth_pop3.pl

geändert werden.

Ach ja noch was
Wenn das Spoolverzeichnis mailspooldir auf /var/spool/mail gesetzt ist, müssen alle benutzer Lese und Schreibrecht für diese Datei haben.
oder man fügt in der openwebmail.conf die Einträge
use_homedirspools yes
homedirspoolname mail
homedirfoldername ~/user/mail/ # für den Folder "mail" im Heimatverzeichnis des Benutzers user

Manfred