Oh Boy! Sono passati più di 4 mesi da quando ho scritto un post sul blog. Il lavoro e le mie altre attività quotidiane come l'esercizio fisico, la cucina, pulizia, ecc è stato davvero tenermi occupato. Con questo post la mia intenzione è di iniziare lentamente a bloggare di nuovo.

Scopo: A volte indietro mi aveva bloggato su come installare e configurare MediaWiki sul vostro sistema Debian. Oggi impareremo come utilizzare il metodo di autenticazione directory LDAP / Active con la configurazione corrente MediaWiki. Si prega di notare che noi non entreremo nei dettagli di LDAP / Active Directory .

Che cosa è LDAP / Active Directory Authentication?

Normalmente, quando si installa MediaWiki sul sistema è necessario creare prima un account utente per accedere MediaWiki. Ma cosa succede se si desidera centralizzare il processo di autenticazione? Significato cosa succede se c'è un sistema (di lasciare Windows Server utilizzando Active Directory), che gestisce già un database / repository centralizzato di username e password che possiamo usare per autenticare i nostri login MediaWiki.

Assunzione

Partiamo dal presupposto che c'è una macchina server Finestra già in esecuzione nella vostra LAN / Intranet con Active Directory.

Quindi cerchiamo di iniziare ...

Fase 1: Ottenere l'estensione per l'autenticazione LDAP

Useremo il popolare autenticazione LDAP estensione per questo scopo. Io suggerisco di scaricare l'estensione che corrisponde alla versione MediaWiki. Ad esempio, sul mio sistema Debian Lenny, la versione attuale MedaiWiki è 1.12 quindi vi consiglio di installare l'estensione che corrisponde alla versione 1.12. È possibile sfogliare versione diversa di questa estensione qui .

Fase 2: Installare / copiare i file di estensione

# tar -xzf LdapAuthentication-MW1.12-r30722.tar.gz -C /var/lib/mediawiki/extensions

Passo 3: Installare il plugin LDAP per PHP

Avrete bisogno di questo pacchetto in modo che l'estensione funzioni correttamente.

# apt-get install php5-ldap

Passo 4: Configurare l'estensione

Questo è il passo più importante e questo è il passo in cui, naturalmente, la maggior parte degli utenti si incorrere in problemi. Si prega di notare che io non sono la persona che amministra il Active Directory né io sono un esperto in Active Directory. In realtà ho appena so molto di Active Directory, ma ho solo avere abbastanza informazioni sul mio attuale server Active Directory che dovrebbe consentirmi di connessione e autenticazione utilizzando questa estensione. Quindi, se io sono in grado di ottenere questo fatto con successo non vi è alcun motivo per cui non sarà possibile. Anche i passi che sto mostrando qui è per una semplice non-fantasia di installazione non complessa.

Aggiungere le seguenti righe al vostro /etc/mediawiki/LocalSettings.php preferibile verso la fine del file, ma in generale ho trovato questo lavoro, anche se si aggiunge che in principio:


# 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" );
$wgLDAPRetrievePrefs = array( "mycompany.net" => "true" );
$wgLDAPDebug = 3; //for debugging LDAP
$wgShowExceptionDetails = true; //for debugging MediaWiki

Dove:

mycompany.net = nome della directory attiva nella vostra azienda / impresa

myad1.mycompany.net = Nome del server fisico su cui è ospitato Active Directory

mynet name = dominio della tua azienda

Dovreste essere in grado di ottenere questi valori da parte della persona IT che è in carica di Active Directory.

Fase 5: Entra

Ora è giunto il momento di vedere se configuriamo correttamente la nostra estensione! Vai al tuo registro di MediaWiki a pagina:

http://localhost/wiki/index.php?title=Special:Userlogin&returnto=Main_Page

e dovrebbe vedere un campo "Domain Name" proprio sotto il tuo nome utente e la password della casella di input in questo modo:

autenticazione di Active Directory mediawiki

con il nome di Active Directory (in questo caso mycompany.net) specificato nel file di LocalSettings.php.

Prova a inserire un nome utente e la relativa password di un utente che è già in Active Directory e vedere se si è in grado di accedere con successo. Se siete allora congratulazioni !!!!!! La configurazione ha lavorato con successo. Se poi non abbiamo bisogno di eseguire il debug ulteriormente.

Domande supplementari / Note

Cosa succede se non installo la versione corretta dell'estensione?

Si rischia di ottenere il seguente errore non appena si carica la tua pagina MediaWiki (http: // localost / wiki /):

Fatal error: Class 'AuthPlugin' not found in \var\lib\mediawiki\extensions\LdapAuthentication\LdapAuthentication.php on line 65

Dove trovo a vedere gli errori nel caso per estensione non funzionano?

Prima di tutto è necessario attivare il debug dell'estensione LDAP impostando la seguente riga nel file LocalSettings.php:

$wgLDAPDebug = 3; //for debugging LDAP

Dovreste essere in grado di vedere gli errori nell'angolo in alto a sinistra della schermata come questa:

Errore MediaWiki LDAP

Ho bisogno di avere utenti nel mio database MediaWiki prima che l'autenticazione tramite Active Directory?

No. Il lavoro come le cose è che se l'utente non è presente nel database MediaWiki poi una voce per il nome utente che hai utilizzato per l'autenticazione con Active Directory verrà creato automaticamente nel database di MediaWiki. Se il nome utente esisteva già prima effettuato l'accesso per la prima volta utilizzando l'autenticazione di Active Directory quindi non succede nulla cioè nessun nuovo utente viene creato nel database perché l'utente già esistente nel database. Le preferenze dell'utente come nome, email, ecc che vengono tirati da Active Directory viene aggiornato / sovrascritto per l'utente corrispondente nel database se la voce esce già.
Spero che questo vi ha dato abbastanza materiale per iniziare con il / l'autenticazione di Active Directory LDAP.

LDAP'ing felice!

Essere socievole, Condividi!