प्रमाण पत्र का उपयोग करके टीएलएस से अधिक SLES पर काम कर रहे ldapsearch कैसे करें?


12

हमें एक प्रमाण पत्र का उपयोग करके tls पर अपनी php स्क्रिप्ट को LDAP से कनेक्ट करना होगा। LDAP कनेक्शन tls के बिना अच्छी तरह से काम करता है। अधिक विवरण यहाँ /programming/15260252/how-to-use-multiple-tls-certports-for-ldap-from-php-zend

हम Softerra LDAP ब्राउज़र का उपयोग करके विंडोज से tls के माध्यम से जुड़ने में कामयाब रहे। इसने हमें एक प्रमाणपत्र स्थापित करने के लिए कहा और क्या हम इस पर भरोसा करते हैं।

मेरा अंतिम परिणाम php से TLS का उपयोग करते हुए LDAP के साथ प्रमाणित करने में सक्षम होना है। मुझे टाइप .cer का प्रमाण पत्र दिया गया है। यह विंडोज एक्सचेंज मशीन से आता है। मैं SLES समर्थन .pem प्रमाणपत्र क्या देख सकता हूं। तो मेरा सवाल है ...

Q1: क्या मुझे .cer से .pem में बदलने की आवश्यकता है इससे पहले कि मैं क्लाइंट (जो SLES सर्वर है) पर प्रमाणपत्र स्थापित कर सकता हूं और अंत में Q2: सर्वर पर इस प्रमाणपत्र को स्थापित करने का सबसे अच्छा तरीका क्या है ताकि मेरा php आवेदन कर सके इसे एक्सेस करें और अपना काम करें । ध्यान दें कि SLES सर्वर पर हमें विभिन्न LDAP सर्वर से कनेक्ट करने की आवश्यकता होती है।

वर्तमान में अगर हम दौड़ते हैं

ldapsearch -H ldaps://localhost:9215 -W

हमें मिला

Enter LDAP Password: 
ldap_sasl_interactive_bind_s: Can't contact LDAP server (-1)
additional info: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed (unable to get local issuer certificate)

मुझे यहाँ बहुत सारी अच्छी जानकारी मिली है http://www.php.net/manual/de/function.ldap-connect.php#36156 और विशेष रूप से यह वाक्य मेरी नज़र में महत्वपूर्ण हैOnce you've gotten the ldapsearch tool working correctly PHP should work also.


  • SUSE लाइनेक्स एंटरप्राइज सर्वर 11 (x86_64)
  • : OpenLDAP 20426)

डीबग करने का एक वैकल्पिक तरीका एलडीएपी भाग को अनदेखा करना है और बस एसएसएल को देखना है: सर्वर द्वारा उपयोग किए जाने वाले सर्टिफिकेशन और सत्यापन के परिणामों को बाहर निकालने के लिए आप "Opensl s_client -connect localhost: 9215" चला सकते हैं।
कोव

ठीक। मैं इसे डेवलपर के पास भेजूंगा। मुझे अभी भी व्यक्तिगत रूप से समझ में नहीं आया है कि मैं प्रमाण पत्र कैसे स्थापित करता हूं और यह एक सर्वर से जुड़ा हुआ है जब मैं इसे एक्सेस करना चाहता हूं।
राडेक

जवाबों:


25

इसका मतलब है कि सर्वर पर प्रमाणपत्र समाप्त हो गया है या यह अमान्य है।

वर्कअराउंड के लिए, LDAPTLS_REQCERTसर्टिफिकेट को अनदेखा करने के लिए वैरिएबल का उपयोग करें , जैसे:

LDAPTLS_REQCERT=never ldapsearch -D "cn=drupal-test,ou=Services,dc=example,dc=com" -w my_pass -h ldap.example.com -b "ou=People,dc=example,dc=com" -s sub -x -ZZ "(uid=admin)"

अन्यथा आप प्रमाण पत्र आयात कर सकते हैं और इसे विश्वसनीय के रूप में चिह्नित कर सकते हैं।


साइबरविन पर भी काम करता है जहां पैरामीटर ldap.confसेट करने के लिए कोई मौजूदा फ़ाइल नहीं थी TLS_REQCERT
bjj

8

मुझे pem से cer में रूपांतरण के बारे में निश्चित नहीं है, लेकिन ldapsearch उपयोग certs w / o को ldap.conf या w / o बनाने के लिए आपको वैश्विक सीट्स को संशोधित करने की अनुमति चाहिए, जो आपको यह करने में सक्षम होना चाहिए:

env LDAPTLS_CACERT=/path/to/cert ldapsearch

1

का उपयोग करते हुए

LDAPTLS_REQCERT=never

LDAP सर्वर का प्रमाणपत्र सत्यापन हटाता है। यह पहली बार में टीएलएस द्वारा प्रदान की गई सुरक्षा को रोकता है। यह मत करो। यदि कोई समस्या है, तो आपको प्रमाण पत्र को ठीक करना चाहिए, और फिर tink द्वारा वर्णित प्रमाणपत्र प्राधिकारी के साथ LDAP क्लाइंट प्रदान करें।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.