प्रमाणपत्र नवीनीकरण के बाद ldap प्रमाणीकरण start_tls विकल्प के साथ काम नहीं कर रहा है


1

Ubuntu ldap प्रमाणीकरण ldap.conf फ़ाइल में सक्षम ssl start_tls विकल्प के साथ मेरे क्लाइंट पर काम नहीं कर रहा है। जब मैं ssl start_tls पर टिप्पणी करता हूं तो मैं प्रमाणित कर सकता हूं।

मैंने ldap सर्वर प्रमाणपत्र को अपग्रेड किया है और तब से उपयोगकर्ता मेरे ubuntu 10.04 क्लाइंट मशीन पर प्रमाणित नहीं कर सकते हैं यदि ssl सक्षम है। जो परिवर्तन हुए:

Cert upgraded from 1024 to 2048 bit
now is a wildcart cert and use it to be a self-signed cert
encryption algorithm is now shaw512 (use to be md5)

मेरे विशेषाधिकार में कुछ त्रुटियां हैं:

nss-ldap: do_open: do_start_tls विफल: स्टेट = -1

नए सिरे से काम कर रहे हैं क्योंकि मेरे पास कुछ अन्य ग्राहक हैं जो नए सिरेट्स (पुरानी सेंटो मशीनों) का उपयोग करके प्रमाणित करते हैं।

किसी के पास कोई भी विचार है कि मैं अपने ग्राहक पर ldap के साथ ssl का उपयोग क्यों नहीं कर सकता?

जवाबों:


1

क्या कोई हस्ताक्षरित पदानुक्रम है (अर्थात स्व-हस्ताक्षरित नहीं)? "वाइल्डकार्ड" और "स्व-हस्ताक्षरित" अनन्य नहीं हैं। एक वाणिज्यिक वाइल्डकार्ड प्रमाणपत्र में एक पदानुक्रम होगा, अर्थात एक या एक से अधिक मध्यवर्ती सीए, और एक रूट सीए।

sha-512 या md5 हैश को प्रमाणित हस्ताक्षर में उपयोग किया जाता है, वे एन्क्रिप्शन एल्गोरिदम नहीं हैं । ये प्रमाणित अखंडता को सत्यापित करने के लिए उपयोग किया जाता है, एक कनेक्शन के लिए उपयोग किया जाने वाला सिफर इस से स्वतंत्र रूप से बातचीत करता है।

मुझे लगता है कि सबसे संभावित कारण या तो sha512 हैं (अधिक सही रूप से, "sha512WithRSAEnc एन्क्रिप्शन") Ubuntu 10 में समर्थित नहीं है; या मशीन एक या एक से अधिक सीए सिरेट्स (मध्यवर्ती या रूट) को याद कर रही है, इसलिए पूर्ण श्रृंखला सत्यापन पूरा नहीं हो सकता है।

आप यह देख सकते हैं कि ओपनसिएल (उबंटू 10 मशीन पर) चलाकर सर्वर के नए प्रमाणपत्र से निपट सकता है:

openssl x509 -in newservercert.crt -noout -text

हालांकि यह निर्णायक नहीं हो सकता है। यह भी सहायक हो सकता है:

ldapsearch -x -Z -v -h your.ldap.server

(ओपनएसएसएल के बजाय GnuTLS का उपयोग करने की एक पतली संभावना है, वहां कोई मदद नहीं कर सकता, क्षमा करें!)

आप संभवतः अपने /etc/ldap/ldap.conf फ़ाइल में इसे जोड़कर किसी श्रृंखला समस्या की पुष्टि या खंडन कर सकते हैं:

TLS_REQCERT never

यदि वह मदद करता है, तो आपको श्रृंखला के लापता हिस्सों को प्राप्त करना चाहिए, और उन्हें अपने स्थानीय स्टोर में जोड़ना चाहिए, जो कि पूरा हो गया है वह क्लाइंट कॉन्फ़िगरेशन पर निर्भर करता है, "TLS_CACERT" और / या TLS_CACERTDIR के लिए जाँच करना / incc/ldap/ldap.conf में। निर्देश है कि आप कहां से शुरू करें।

कम संभावित कारणों में शामिल हैं:

  • CRLs की जांच करने में असमर्थता (ldap.conf देखें कि क्या यह सक्षम है)

और यह मानते हुए कि कुछ और नहीं बदला गया है, पूर्णता के लिए शामिल किए गए अनुचित कारणों में शामिल हैं:

  • सर्वर प्रोटोकॉल संस्करण या ग्राहक द्वारा असमर्थित सिफर सेट
  • समर्थित एसएएसएल तंत्र में परिवर्तन

क्या आप सुनिश्चित हैं कि आपके पास सही सिरे हैं? AFAICT आप पोर्ट 389 पर स्टार्टटल्स चला रहे हैं, यदि आप पोर्ट 636 पर भी चल रहे हैं तो यह भी कोशिश करें: openssl s_client -connect your.ldap.server:636 -showcertsयदि आपके पास ldapsearch है, तो ऊपर ldapsearch कमांड क्या कहती है?
mr.spuratic

आपके प्रतिक्रिया के लिए धन्येवाद। मैंने 'Opensl' कमांड की कोशिश की और उसने प्रमाणपत्र को पढ़ा और मुझे 2048 बिट कुंजी की उम्मीद थी, लेकिन इसमें 1024 हैं और हस्ताक्षर एल्गोरिथ्म sha1WithRSAEnc एन्क्रिप्शन है और मुझे sha512WithRSAEnc एन्क्रिप्शन की उम्मीद है। Shaw512 को चालू करता है, एन्क्रिप्शन एल्गोरिथम है जिसका उपयोग पासवर्ड पर किया जाता है, हस्ताक्षर एल्गोरिथ्म पर नहीं। वास्तव में कोई फर्क नहीं पड़ता क्योंकि यह मेरी कुछ अन्य मशीनों पर काम करने का प्रमाण पत्र है। Ldapsearch कमांड ने मुझे एक त्रुटि दी: 'ldap_start_tls: कनेक्ट एरर (-11)'। अगर मैं 'tls_checkpeer नहीं' सेट करता हूं तो ओह और मैं ssl start_tls काम कर पा रहा था।
admiles

यह सही प्रमाण है क्योंकि मैं अपने अन्य ग्राहकों पर उसी का उपयोग करता हूं। हाँ पोर्ट 389 है और ldapsearch 'ldap_start_tls: कनेक्ट एरर (-11)' एरर देता है। कम से कम मैं अब ssl का उपयोग कर रहा हूं, पहले से बेहतर है, लेकिन इसका रहस्य है कि यह मेरा प्रमाण पत्र क्यों नहीं लेगा।
admiles

0

यकीन नहीं होता अगर आपने यह सवाल हल कर लिया। मैंने उसी स्थिति का सामना किया। 12.04 tls का उपयोग कर ldap सर्वर से जुड़ता है लेकिन 10.04 नहीं। मेरा समाधान इसमें एक पंक्ति जोड़ रहा है /etc/ldap/ldap.conf:

TLS_CACERT      /etc/ssl/certs/ca-certificates.crt

और 10.04 क्लाइंट tls का उपयोग करके ldap सर्वर से जुड़ सकता है।

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