Ok – hier der Schnelldurchlauf.
Ich habe mrbs 1.7.1 nach Anleitung installiert: Paket entpackt, web-Ordner auf Webserver verlinkt, neue mySQL-Datenbank erzeugt, mit adminer.php einen neuen mySQL-User mit allen Rechten für die neue DB eingerichtet. Danach die Tabellen erzeugt mit
mysql -u <angelegterUser> -p <DatenbankName> < tables.my.sql
Anschließend muss man sich aus den beiden Dateien
systemdefaults.inc.php und
areadefaults.inc.php
eine config.inc.php basteln. Und dort schaltet man dann alles scharf, was man braucht.
Im Abschnitt
"Authentication settings "
habe ich “$auth[“type”] = “ldap”;” aktiviert.
Hier die passenden LDAP-Settings, die nur noch Lehrer reinlassen:
// 'auth_ldap' configuration settings
// Where is the LDAP server.
// This can be an array.
$ldap_host = "ldaps://meine.dynamische-dns-adresse.de";
// If you have a non-standard LDAP port, you can define it here.
// This can be an array.
$ldap_port = 636;
// If you do not want to use LDAP v3, change the following to false.
// This can be an array.
$ldap_v3 = true;
// If you want to use TLS, change the following to true.
// This can be an array.
$ldap_tls = false;
// LDAP base distinguish name.
// This can be an array.
$ldap_base_dn = "ou=accounts,dc=linux,dc=lokal";
// Attribute within the base dn that contains the username
// This can be an array.
$ldap_user_attrib = "uid";
// nur Lehrer sollen rein:
$ldap_filter = "gidNumber=10000";
// Set to true to tell MRBS to look up a user's email address in LDAP.
// Utilises $ldap_email_attrib below
$ldap_get_user_email = false;
// The LDAP attribute which holds a user's email address
// This can be an array.
$ldap_email_attrib = 'mail';
// The LDAP attribute which holds a user's name. Another common attribute
// to use (with Active Directory) is 'displayname'.
// This can be an array.
$ldap_name_attrib = 'cn';
// The DN of the LDAP group that MRBS admins must be in. If this is defined
// then the $auth["admin"] is not used.
// This can be an array.
// $ldap_admin_group_dn = 'cn=admins,ou=whoever,dc=example,dc=com';
// The LDAP attribute that holds group membership details. Used with
// $ldap_admin_group_dn, above.
// This can be an array.
$ldap_group_member_attrib = 'memberof';
// Set to true if you want MRBS to call ldap_unbind() between successive
// attempts to bind. Unbinding while still connected upsets some
// LDAP servers
$ldap_unbind_between_attempts = false;
// Output debugging information for LDAP actions
$ldap_debug = false;
//$ldap_debug = true;
Einen Nachteil hat es bisher noch – man kann sich NUR noch als Lehrer einloggen. Es gibt im Moment keinen Admin. Wenn man das kurzfristig ändern will, muss man oben aus $auth[“type”] = “ldap”
wieder ein “none” machen und dann kann sich wieder jeder einloggen (um zB Räume zu ändern/anzulegen/zu löschen etc).
Wenn jemand weiß, wie ich die Admin-Gruppe unter " $ldap_admin_group_dn " herausfiltern kann, würde ich aber auch das einstellen.
Vielleicht hilft es ja auch anderen weiter … ich bin jedenfalls froh, dass der Service jetzt im orangen Netz läuft und vom linuxmuster-Server (fast) unabhängig ist…
Schöne Grüße,
Michael