MediaWiki an ein ActiveDirectory anbinden

Aus Laub-Home Wiki

Will man sein Wiki an die vorhandene Active Directory hängen um allen Benutzer der AD ein Login am MediaWiki zu ermöglichen sollte man wie folgt vorgehen. Die hier verwendete Extension LDAP_Authentication lässt noch mehr Konfigurationen zu, diese sollten auf der Extension Page nachgelesen werden, hier geht es nur um die reine AD Integrierung, bei der alle aktiven AD Benutzer sich einloggen dürfen und standardmäßig der Benutzergruppe "Benutzer" zugewiesen werden.

Extension LDAP_Authentication

Als erstes wird das PHP LDAP Plugin benötigt:

aptitude install php5-ldap
/etc/init.d/apache2 restart

Nun kann die Extension eingespielt werden:

cd /srv/httpd/vhosts/wiki.domain.de/htdocs/extensions/
wget http://upload.wikimedia.org/ext-dist/LdapAuthentication-MW1.18-90286.tar.gz
tar -xzvf LdapAuthentication-MW1.18-90286.tar.gz
rm LdapAuthentication-MW1.18-90286.tar.gz

LocalSettings.php

# Enable LDAP Authentication
require_once( "$IP/extensions/LdapAuthentication/LdapAuthentication.php" );
$wgAuth = new LdapAuthenticationPlugin();
$wgLDAPDomainNames = array( "mycompany.net" );
$wgLDAPServerNames = array( "mycompany.net" => "myad1.mycompany.net" );
$wgLDAPSearchStrings = array( "mycompany.net" => "mynet\\USER-NAME" );
$wgLDAPEncryptionType = array( "mycompany.net" => "clear" );
$wgLDAPUseLocal = false;
$wgMinimalPasswordLength = 1;
$wgLDAPBaseDNs = array( "mycompany.net" => "dc=mycompany,dc=net" );
$wgLDAPSearchAttributes = array( "mycompany.net" => "sAMAccountName" );
$wgLDAPPreferences = array( "mycompany.net" => "true" );
$wgLDAPDebug = 3; //for debugging LDAP
$wgDebugLogGroups["ldap"] = "/tmp/ldapdebug.log" ; //for debugging LDAP
$wgShowExceptionDetails = true; //for debugging MediaWiki

Hier bitte folgendes an euer System anpassen:
mycompany.net = Active Directory Name der Firma
myad1.mycompany.net = Name des physikalischen primären Active Directory Hosts
mynet = Domänenname der Firma
Nun sollte ein Anmelden via AD Account am Wiki möglich sein.