Hallo,
Andreas Rau
Hallo Liste, Hallo Dieter, Dieter Kluenter schrieb:
Andreas Rau
writes: Hallo zusammen,
ich möchte die Administration meines Servers mit Hilfe von Webmin (Version 1.220) umsetzen. Die Benutzerverwaltung soll mittels LDAP realisiert werden.
Meine, negativen, Erfahrungen mit Webmin sind schon etwas älter, so ca. Webmin-0.7, damals wurde das entsprechende LDAP Perlmodul noch mit Mozilla SDK übersetzt und nicht mit libldap, bzw. nicht das Perl Modul Net::LDAP von Graham Barr benutzt. Ich glaube kaum, dass dies geändert wurde. Die LDAP v3 Implementierung in Mozilla SDK ist aber sehr bescheiden. [...] Ich habe eben mal den Code angesehen. Das File save_user.cgi inkludiert das file ldap-useradmin-lib.pl. In letzteren ist mir folgendes aufgefallen
Zeile 23 - 29: eval "use Net::LDAP"; if ($@) { $net_ldap_error = $@; } else { $got_net_ldap++; } eval "use Net::IMAP"; if ($@) { $net_imap_error = $@; } else { $got_net_imap++; }
Gut, da wird also jetzt Net::LDAP eingebunden, ich muss meine Meinung etwas revidieren. Das Paket Net::IMAP ist meines Wissens abhängig von uw-imapd, cyrus-imap hat ein eigenes Perl Modul, nämlich Cyrus::IMAP. Ich kann allerdings nicht beurteilen, ob die beiden Module in den IMAP Grundfunktionen austauschbar sind.
Zeile 35 - 36: $cyrus_class = $config{'imap_class'} || "SuSEeMailObject"; $cyrus_class =~ s/^\s+//; $cyrus_class =~ s/\s+$//;
Wenn ich den Code richtig interpretiere, dann werden die Perl-Module Net::LDAP und Net::IMAP verlangt. Im weiteren Verlauf wird dann, soweit nicht anders definiert, die objectClass "SuSEeMailObject" verwendet. Mich würde nun der Inhalt dieser objectClass interessieren. Wo ist diese objectClass enthalten? Auf meinen SL9.3-System kann ich dieses nicht finden.
Wenn ich recht erinnere, ist SuSEMailObject Bestandteil des SuSE-Email Servers und nicht veröffentlicht. Da hat also bei Webmin einer geschlafen :-)
In meiner ursprünglichen Mail habe ich erwähnt, dass ich an Stelle von SuSEeMailObject die objectClass inetOrgPerson verwendet habe und dort die Felder uid, givenName, und mail füllen wollte. Die Anlage der Benutzer bricht mit der Fehlermeldung
"Failed to save user : Failed to add user to LDAP database : attribute 'sn' provided more than once"
Die Fehlermeldung besagt, dass im Script dass Attribut 'sn' mehrfach benutzt wird, eigentlich dürfte das kein Problem sein, denn sn ist multi-valued, darf also mehrfach benutzt werden. Das Attribut ist im core.schema enthalten, kann also auch nicht durch Objektklassen verändert werden. Es wird also ein Fehler im Script sein.
ab, wenn ich das Anlegen eines CyrusUsers via Webmin aktiviere. In meinem Fall kommt Webmin gar nicht zu den entsprechenden Funktionsaufrufen, einen IMAP-User bei Cyrus anzulegen.
Für mich wären nun ergänzende Hinweise bzgl. SuSEeMailObject und Fehler-/Ursachensuche hilfreiche. Über die Nennung von Alternativen zu Webmin spricht natürlich auch Nichts dagegen.
Meine grundsätzliche Einstellung zu Webmin hat sich nicht geändert :-) Versuche mal, das Perlscript dahingehend zu ändern, dass du SuSEMailObject ersetzt durch inetorgPerson. Ich bin seit jeher ein Vertreter der Shell und der damit verbundenen manuellen Dateineingabe. Administrationstools machen nur dann Sinn, wenn der Administrator auch beurteilen und verantworten kann, was diese Tools anrichten. -Dieter -- Dieter Klünter | Systemberatung http://www.dkluenter.de GPG Key ID:8EF7B6C6