लड़के ओह! मैं के बाद से यह अब 4 महीने से अधिक हो गया है लिखा एक ब्लॉग पोस्ट. काम और आदि व्यायाम, खाना पकाने, सफाई, जैसे मेरे अन्य दैनिक गतिविधियों वास्तव में मुझे व्यस्त रखते हुए किया गया है. इस पोस्ट के साथ मेरा इरादा धीरे - धीरे फिर से वापस ब्लॉगिंग शुरू करने के लिए है.

उद्देश्य: कई बार मैं के बारे में blogged था वापस MediaWiki स्थापित करने और विन्यस्त करने के लिए कैसे अपने डेबियन सिस्टम पर. आज हम अपने वर्तमान साँचा स्थापना के साथ LDAP / सक्रिय निर्देशिका प्रमाणीकरण विधि का उपयोग करने के लिए सीखना होगा. हम की गहराई में नहीं जाना होगा कृपया ध्यान दें कि LDAP / सक्रिय निर्देशिका .

LDAP / सक्रिय निर्देशिका प्रमाणीकरण क्या है?

आप अपने सिस्टम पर वार्ता को स्थापित आम तौर पर जब आप पहली वार्ता में लॉग इन करने के लिए एक उपयोगकर्ता खाते बनाने के लिए है. लेकिन क्या आप प्रमाणीकरण की इस प्रक्रिया को केंद्रीकृत करना चाहते हैं? अर्थ क्या पहले से ही हम अपने साँचा लॉगिन को प्रमाणित करने के लिए उपयोग कर सकते हैं कि उपयोगकर्ता नाम और पासवर्ड की एक केंद्रीकृत डेटाबेस / रिपॉजिटरी रखता है जो एक प्रणाली (सक्रिय निर्देशिका का उपयोग चलो विंडोज सर्वर) अगर वहाँ.

ग्रहण

हम पहले से ही सक्रिय निर्देशिका के साथ अपने लैन / इंट्रानेट में चल रहे एक विंडो सर्वर मशीन है कि वहाँ मान रहे हैं.

तो चलो शुरू हो जाओ ...

चरण 1: LDAP प्रमाणीकरण के लिए विस्तार करें

हम लोकप्रिय का उपयोग किया जाएगा LDAP प्रमाणीकरण इस उद्देश्य के लिए विस्तार. मैं आप अपने साँचा संस्करण के संगत एक्सटेंशन डाउनलोड करते हैं. उदाहरण के लिए, मेरे डेबियन Lenny सिस्टम पर, वर्तमान MedaiWiki संस्करण तो मैं आप संस्करण 1.12 से मेल खाती है कि विस्तार स्थापित करने की सलाह 1.12 है. आप इस विस्तार के विभिन्न संस्करण ब्राउज़ कर सकते हैं यहाँ .

चरण 2: स्थापित करें / विस्तार फाइल कॉपी

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

चरण 3: PHP के लिए LDAP प्लगइन स्थापित करें

आप ठीक से काम करने के लिए विस्तार के लिए आदेश में इस पैकेज की आवश्यकता होगी.

# apt-get install php5-ldap

चरण 4: विस्तार विन्यस्त करें

यह सबसे महत्वपूर्ण कदम है और यह उपयोगकर्ताओं के अधिकांश समस्याओं में चला जाएगा जहां स्वाभाविक रूप से कदम है. मैं सक्रिय निर्देशिका का प्रशासन न तो मैं सक्रिय निर्देशिका में एक विशेषज्ञ हूँ जो व्यक्ति नहीं हूँ कि कृपया ध्यान दें. वास्तव में मैं मुश्किल से सक्रिय निर्देशिका के बारे में ज्यादा पता है, लेकिन मैं सिर्फ कनेक्ट करने के लिए मुझे सक्षम है और इस विस्तार का उपयोग को प्रमाणित करना चाहिए कि मेरे वर्तमान सक्रिय निर्देशिका सर्वर के बारे में पर्याप्त जानकारी नहीं है. मैं इस किया पाने के लिए कर रहा हूँ तो अगर सफलतापूर्वक आप करने में सक्षम नहीं होगा तो कोई वजह नहीं है. इसके अलावा, मैं यहाँ दिखा रहा हूँ कि कदम एक बहुत ही सरल गैर फैंसी गैर जटिल सेटअप के लिए है.

फाइल के अंत में बेहतर आपके / etc / वार्ता / 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" );
$wgLDAPRetrievePrefs = array( "mycompany.net" => "true" );
$wgLDAPDebug = 3; //for debugging LDAP
$wgShowExceptionDetails = true; //for debugging MediaWiki

कहां:

अपनी कंपनी / उद्यम में mycompany.net = सक्रिय निर्देशिका का नाम

अपने सक्रिय निर्देशिका की मेजबानी की है, जिस पर शारीरिक सर्वर की myad1.mycompany.net = नाम

आपकी कंपनी की mynet = डोमेन नाम

आप प्रभारी सक्रिय निर्देशिका का है जो आईटी व्यक्ति से इन मूल्यों को प्राप्त करने में सक्षम होना चाहिए.

चरण 5: प्रवेश

अब समय है कि हम सही ढंग से हमारी विस्तार कॉन्फ़िगर देखने के लिए अगर आ गया है! पेज में अपनी वार्ता के प्रवेश पर जाएँ:

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

और सही अपने यूज़रनेम और इस तरह से पासवर्ड इनपुट बॉक्स के नीचे एक "डोमेन नाम" क्षेत्र देखना चाहिए:

सक्रिय निर्देशिका प्रमाणीकरण साँचा

आप LocalSettings.php फ़ाइल में निर्दिष्ट है कि इस मामले (mycompany.net में) सक्रिय निर्देशिका के नाम के साथ.

सक्रिय निर्देशिका में पहले से ही है कि एक उपयोगकर्ता के एक उपयोगकर्ता नाम और इसी पासवर्ड में प्रवेश की कोशिश करो और आप सफलतापूर्वक में प्रवेश करने में सक्षम हैं या नहीं. आप तो बधाई रखते हैं!! आपकी सेटअप सफलतापूर्वक काम किया है. यदि नहीं तो हम आगे डिबग करने की जरूरत है.

अतिरिक्त प्रश्न / नोट्स

मैं विस्तार का सही संस्करण स्थापित नहीं है, तो क्या होता?

आप जैसे ही आप अपने साँचा पेज (http://localost/wiki/) लोड के रूप में निम्न त्रुटि प्राप्त होने की संभावना हैं:

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

मैं कहां से काम नहीं करते विस्तार से मामले में त्रुटियों को देखने के लिए मिलता है?

आप अपने LocalSettings.php फ़ाइल में निम्न पंक्ति सेट करके LDAP एक्सटेंशन के डिबगिंग को सक्षम करने की आवश्यकता है सब से पहले:

$wgLDAPDebug = 3; //for debugging LDAP

आप इस तरह से अपनी स्क्रीन के ऊपरी बाएँ कोने पर त्रुटियों को देखने के लिए सक्षम होना चाहिए:

साँचा LDAP त्रुटि

मैं सक्रिय निर्देशिका का उपयोग कर प्रमाणीकृत पहले से पहले मैं अपने साँचा डेटाबेस में उपयोगकर्ता की आवश्यकता है?

सं चीजें काम जिस तरह से उपयोगकर्ता अपने साँचा डेटाबेस में मौजूद नहीं है, तो आप सक्रिय निर्देशिका के साथ प्रमाणित करने के लिए प्रयोग किया जाता है कि उपयोगकर्ता नाम के लिए एक प्रवेश स्वतः साँचा डेटाबेस में निर्मित होने वाले है. आप सक्रिय निर्देशिका प्रमाणीकरण का उपयोग कर पहली बार में लॉग इन करने से पहले उपयोगकर्ता नाम पहले से ही अस्तित्व में है तो उपयोगकर्ता पहले से ही डेटाबेस में मौजूद है, क्योंकि कोई नया उपयोगकर्ता डेटाबेस में बनाया जाता है यानी तब कुछ नहीं होता. सक्रिय निर्देशिका से निकाला जा रहा है कि आदि का नाम, ईमेल, जैसे उपयोगकर्ता वरीयताओं प्रविष्टि पहले से ही बाहर निकलता है, तो डेटाबेस में संगत उपयोगकर्ता के लिए ओवरराइट / अद्यतन हो जाता है.
मैं यह आपके LDAP / सक्रिय निर्देशिका प्रमाणीकरण के साथ आरंभ करने के लिए पर्याप्त सामग्री दी है उम्मीद है.

मुबारक LDAP'ing!

मिलनसार होना, शेयर!