ich schaffe es nicht, dass sich unser bei BelWü gehostetes Openschulportfolio (Version oSP 13.03-fishlegs.2-quickfix1) per LDAPS am Linuxmuster-Server authentifiziert.
Zuvor, mit unserem alten paedML Win 2.7 Server hatte ich eine funktionierende LDAP authentifizierung mit Hilfe des OSP-Forums und Wikis hinbekommen.
<?php
/*
* Dokuwiki's Main Configuration File - Local Settings
* Auto-generated by config plugin
* Run for user: schiebel
* Date: Mon, 01 Mar 2010 15:00:09 +0100
*/
$conf['title'] = 'Schulportfolio LDAPS-Test';
$conf['schoolname'] = 'Schulname';
$conf['lang'] = 'de';
$conf['template'] = 'portfolio';
$conf['license'] = '';
$conf['recent'] = 35;
$conf['breadcrumbs'] = 0;
$conf['youarehere'] = 1;
$conf['dformat'] = '%d.%m.%Y %H:%M';
$conf['useacl'] = 1;
$conf['superuser'] = '@portfolioadm';
$conf['rememberme'] = 0;
$conf['disableactions'] = 'register,resendpwd,profile';
$conf['sneaky_index'] = 1;
$conf['autoplural'] = 1;
$conf['compress'] = 0;
$conf['plugin']['tag']['pagelist_flags'] = 'default';
$conf['plugin']['task']['datefield'] = 0;
$conf['plugin']['task']['tasks_formposition'] = 'top';
$conf['plugin']['archiveupload']['manageronly'] = 1;
$conf['plugin']['include']['showuser'] = 0;
$conf['plugin']['include']['showcomments'] = 0;
$conf['plugin']['include']['showlinkbacks'] = 0;
$conf['plugin']['include']['showtags'] = 0;
$conf['plugin']['include']['noheader'] = '1';
$conf['openregister'] = '0';
// Eine der LDAP Optionen durch entfernen der "//"
// aktivieren - bevorzugt LDAPS zur
// verschlüsselten Übertragung der Benutzerdaten verwenden
// ldap ssl
$conf['auth']['ldap']['server'] = 'ldaps://141.10.78.36:636';
// ldap ohne ssl
//$conf['auth']['ldap']['server'] = 'ldap://server.schule-bw.de:389';
// In den beiden folgenden Zeilen
// AENDERN an die eigene Schule anpasssen
$conf['auth']['ldap']['usertree'] = 'ou=accounts,dc=linuxmuster.net, dc=lokal';
$conf['auth']['ldap']['grouptree'] = 'ou=groups,dc=linuxmuster.net, dc=lokal';
$conf['auth']['ldap']['userfilter'] = '(&(uid=%{user})(objectClass=posixAccount))';
$conf['auth']['ldap']['groupfilter'] = '(&(objectClass=posixGroup)(|(gidNumber=%{gid})(memberUID=%{user})))';
$conf['auth']['ldap']['groupdelprefix'] = "p_";
$conf['defaultgroup'] = "users";
$conf['authtype'] = 'ldap';
// end auto-generated content
Ich habe die zwei Projektgruppen in der Schulkonsole eingerichtet und Mitglieder aufgenommen
Ich habe mir von BelWü für den Port TCP 636 eine Weiterleitung einrichten lassen
Ich habe auf dem IPFire die Regel #4 “LDAPS --> Server” aktiviert.
Wenn ich mich nun im OSP anmelden will
ist zum Einen das Layout der Seite völlig kaputt (ich habe keinen Plan von PHP, aber wenn ich die Teile aus der alten local.php, die augenscheinlich nichts mit der Authentifizierung zu tun haben, in obige local.php hineinkopiere sieht alles wieder gut aus. Dann erhalte ich aber keine Fehlermeldung mehr, also lasse ich die local.php von der OSP-Seite zunächst mal wie vorgegeben)
erhalte ich die Fehlermeldungen “LDAP: couldn’t connect to LDAP server” und “Nutzername oder Passwort sind falsch.” (siehe Screenshot).
auf unserem Server steht in der Datei in dem Teil, den ich für zuständig halte:
#######################################################################
# Specific Directives for database #1, of type sql:
# Database specific directives apply to this databasse until another
# 'database' directive occurs
database hdb
#LDAP Suffix
suffix "dc=linuxmuster-net,dc=lokal"
#LDAP Admin
rootdn "cn=admin,dc=linuxmuster-net,dc=lokal"
rootpw xxxxxxxxxxxxxxxxxxx
# Where the database file are physically stored for database #1
directory "/var/lib/ldap"
Ha! Jetzt sehe ich meinen Fehler. Gleich mal ausprobieren.
erfahrungsgemäß sind es immer wieder dieselben drei Punkte, wenn es mit LDAPS klemmt:
Fehler in der local.php
Router/Firewall spielen nicht mit
Selbstsignierte Zertifikate
Bei Deiner Domäne hast Du bestimmt ein selbstsigniertes Zertifikat im Einsatz. Du musst dann dem LDAP-Client bei Belwü sagen, dass er das akzeptieren soll. Entweder, indem Du das Zertifikat dort installierst, oder, indem Du die Überprüfung der Zertifikate abschaltest.
Ansonsten hilft es, in die Logs zu schauen. Das wäre /var/log/syslog auf dem Server. Oft sieht man auch erst was, wenn man das Loglevel hochsetzt - da muss bei LDAP eine ziemlich große Zahl hin, ich schaue das auch immer nach.
Hallo Michael,
dc=linuxmuster-net,dc=lokal ist natürlich nur richtig, wenn das auf deinem Server auch so ist… Schau mal nach (am linuxmuster.net Server):
~# smbldap-usershow pgmadmin | head -n1