मैं मैकोज़ सर्वर 5 एलडीएपी के साथ अमेज़ॅन लिनक्स (लोचदार बीनस्टॉक PHP 7.0) पर ओपनडैप के साथ ठीक से काम करने में सक्षम था, टीएलएस सेट मांगने के साथ।
/etc/openldap/ldap.conf में
:
TLS_REQCERT मांग
TLS_CACERT /etc/openldap/certs/yourcacert.pem
(ध्यान दें कि आप प्रयोग नहीं कर रहे हैं openldap, पथ /etc/ldap/certs/yourcacert.pem होगा)। यह सेटअप तब तक काम नहीं करता जब तक कि मैंने प्रमाण पत्र को कॉर्ट फ़ोल्डर में नहीं रखा; यह किसी अन्य पथ से काम नहीं करता था।
उस पथ में रखा जाने वाला प्रमाण पत्र सर्वर का टीएलएस प्रमाण पत्र नहीं है। यह प्राधिकरण का सीए (सर्टिफिकेट अथॉरिटी) प्रमाण पत्र है जिसने सर्वर/डोमेन विशिष्ट टीएलएस प्रमाणपत्र जारी किया है। उस पथ में केवल सीए प्रमाणपत्र ही एलएलएपी को PHP में बांधने से पहले टीएलएस को काम करने की अनुमति देगा। अपने सर्वर से सीए प्रमाण पत्र प्राप्त करें या इसे प्राधिकरण की साइट से डाउनलोड करें, वे स्वतंत्र रूप से उपलब्ध हैं।
यह जांचने के लिए कि क्या एलडीएपी बाइंड टीएलएस के बिना भी काम कर रहा है, TLS_REQCERT कभी अस्थायी रूप से सेट नहीं करें (TLS_CACERT को # टिप्पणी करने की आवश्यकता हो सकती है)। अगर आपको "एलडीएपी से कनेक्ट नहीं किया जा सकता" तो यह एक टीएलएस त्रुटि नहीं है; यह बस सर्वर से कनेक्ट नहीं हो सकता है और आपको पोर्ट 38 9 खोलने की आवश्यकता है (टीएलएस के लिए 636 नहीं)।
हर बार जब आप कॉन्फ़िगरेशन फ़ाइल या प्रमाणपत्र में कोई परिवर्तन करते हैं तो अपने अपाचे सर्वर को पुनरारंभ करना याद रखें।
ऐसा करने से यह मेरे लिए काम नहीं करता है। मुझे क्या करना था (थ्रेड के बाद: http://www.mediawiki.org/wiki/Thread:Extension_talk:LDAP_Authentication/Unable_to_start_TLS_-_Warning_on_line_577), $ wgLDAPEncryptionType = array ('YOUR_DOMAIN' => 'clear' सेट करना था); LocalSettings.php में। यह मिल गया और तुरंत काम कर रहा है। –
कृपया यह नहीं कि प्रमाणपत्र सत्यापन को अक्षम करके आप मध्य हमले में आदमी को अनुमति देकर सुरक्षा छेद खोलें। आप गंतव्य की पुष्टि किए बिना संचरण एन्क्रिप्ट कर रहे हैं! – svandragt
@svandragt मुझे इस बिंदु पर भी परवाह नहीं है। अगर यह मुझे कुछ ऐसा वापस कर देगा जो कोई त्रुटि नहीं है तो मैं हमेशा से आभारी रहूंगा। एक विंडोज सिस्टम पर PHP 5 चल रहा है।3, उपर्युक्त उत्तर –