2016-04-26 9 views
9

SASL और LDAP का उपयोग करने की कोशिश कर RedHat Linux में उपयोगकर्ता को प्रमाणीकृत करने के लिए। अब तक मैंने saslauthd सेवा स्थापित की है और यह ऊपर और चल रही है। मेरे /etc/saslauthd.conf इस प्रकार की तरह दिखता है:एसएएसएल एलडीएपी प्रमाणीकरण विफलता

ldap_servers: ldaps://test.ldap.server:1234 
ldap_use_sasl: yes 
ldap_mech: DIGEST-MD5 
ldap_auth_method: fastbind 
ldap_search_base: Ou=PeopleAuthSrch,DC=abc,DC=com 

मेरे /etc/sasl2/smtpd.conf लग रहा है निम्नलिखित की तरह:

pwcheck_method: saslauthd 
mech_list: plain login 

अब जब मैं निम्न आदेश के साथ प्रमाणीकरण परीक्षण करने की कोशिश:

testsaslauthd -u username -p password -f /var/run/saslauthd/mux

मैं 0: NO "authentication failed"

और जब मैं लॉग पर नज़र डालें यह कहते हैं:

Retrying authentication 
do_auth :auth failure: [user:myuser] [service=imap] [realm=] [mech=ldap] [reason=unknown] 

मैं यहाँ क्या याद आ रही है? अग्रिम में धन्यवाद!!

अद्यतन:

निम्न आदेश के साथ कोई खोज करते हैं करने के लिए स्थापित OpenLDAP:

ldapsearch -x -h ldaps: //my.ldap.server: बंदरगाह -d8

ldapsearch आदेश मैं /etc/openldap/ldap.conf फ़ाइल को संशोधित रूप में निम्नानुसार काम करने के लिए:

tls_reqcert allow 
TLS_CACERTDIR /home/myuser/cacertss 
LDAPTLS_CACERT /home/myuser/cacertss 

यह सभी प्रविष्टियों देता है, लेकिन मैं अभी भी नहीं कर सकते प्रमाणित

का उपयोग कर testsaslauthd -u उपयोगकर्ता नाम -p पासवर्ड -f/var/चलाने/saslauthd/mux

मुझे क्या करने की जरूरत है यह प्रमाणित करने के लिए यहां?

उत्तर

2

के बाद संघर्ष के 5 दिनों में पता चला कि सेटिंग्स मैं इस्तेमाल किया Active directory के लिए था, जहां मैं निम्नलिखित के रूप में LDAP के लिए सेटिंग्स का उपयोग किया जाना चाहिए:

ldap_servers: ldaps://test.ldap.server:1234 
ldap_search_base: Ou=PeopleAuthSrch,DC=abc,DC=com 
ldap_filters: (uid=%u) 
ldap_tls_cacert_file: /path/to/my/certificate 

मैंने cyrus-sasl-md5 को बर्टोल्ड कोलिक्स के रूप में स्थापित किया था, मुझे यकीन नहीं है कि क्या उपयोगकर्ता को प्रमाणीकृत करने का हिस्सा खेला गया है।

2

मैं रेडहाट लिनक्स 7.2 पर ओपनएलडीएपी और टीएलएस के साथ एसएएसएल सेटअप स्थापित करने के अभ्यास के माध्यम से गया और मुझे कुछ समान काम करने में कामयाब रहा।

जैसा कि मैंने अपनी पिछली पोस्ट में उल्लेख किया है, सुनिश्चित करें कि आपके पास cyrus-sasl-md5 पैकेज स्थापित है।

मैं पहले पर एसएसएल के बिना सबकुछ काम करने की कोशिश करता हूं। एसएसएल के बिना काम करने के बाद ही आप एसएसएल भाग में जाते हैं।

  • आप यह सुनिश्चित करें कि saslauthd प्रमाण पत्र की CA प्रमाणपत्र LDAP सर्वर द्वारा उपयोग किया स्वीकार करता है बनाने की जरूरत है। विशेष रूप से, /etc/saslauthd.conf में
    ldap_tls_cacert_file विकल्प अपने दोस्त
  • यदि आपके पास SELinux सक्षम, यह सुनिश्चित करें कि saslauthd प्रमाणपत्र फ़ाइलें एक्सेस कर सकते बनाते हैं। यदि आप अनिश्चित हैं, तो /var/log/audit/audit.log फ़ाइल को पूंछ करें और "अस्वीकृत" कीवर्ड के साथ प्रविष्टियों की तलाश करें।मुझे audit2allow उपकरण मिला है जो पहले से अस्वीकृत पहुंच को सक्षम करने के लिए एक शानदार तरीका है। आप, साथ ही अस्थायी रूप से setenforce Permissive आदेश का उपयोग SELinux निष्क्रिय कर सकते हैं
+0

मैंने 'साइरस-एसएसएल-एमडी 5 'को' saslauthd 'को फिर से शुरू किया और सुनिश्चित किया कि' ldap_tls_cacert_file' 'ldap' द्वारा उपयोग किए गए प्रमाणपत्र में अंक सुनिश्चित करें। मैंने '/ var/log/audit/audit.log' में भी देखा और मुझे कुछ भी अस्वीकार नहीं हुआ। हालांकि मुझे अभी भी एक ही समस्या है। लॉग इन '/ var/log/messages /' ऊपर उल्लेखित किए गए बगल में बहुत कुछ नहीं कहता है। कोई उपाय? – Gurkha

+0

क्या यह एसएसएल के बिना काम करता है? अगर ऐसा होता है, तो यह एक एसएसएल मुद्दा है। आप डिफ़ॉल्ट रूप से सिस्टम पर विश्वसनीय सीए प्रमाणपत्रों को अद्यतन करने का प्रयास भी कर सकते हैं। 'अपडेट-सीए-सीर्ट्स 'और/या'/etc/pki/ca-trust /' निर्देशिकाओं में चारों ओर पोक कमांड की तलाश करें। –

संबंधित मुद्दे