अपने LDAP क्लाइंट को Secure LDAP सेवा से कनेक्ट करने के लिए, इस लेख में दिए गए निर्देशों का पालन करें.
अहम जानकारी:
- अपने वेंडर के दस्तावेज़ ज़रूर पढ़ें
इस लेख में, LDAP क्लाइंट को Secure LDAP सेवा से कनेक्ट करने के बारे में दी गई जानकारी सिर्फ़ रेफ़रंस के लिए है. इसमें बदलाव किया जा सकता है. इन सहायता निर्देशों के अलावा, अपने वेंडर के दस्तावेज़ ज़रूर पढ़ें. इनमें, क्लाइंट को सुरक्षित एलडीएपी सेवा से कनेक्ट करने के सबसे नए तरीके दिए गए हैं. - शुरू करने से पहले
इन निर्देशों का इस्तेमाल करने से पहले, पक्का करें कि आपने क्लाइंट को सुरक्षित एलडीएपी सेवा में जोड़ लिया हो, ऐक्सेस करने की अनुमतियां कॉन्फ़िगर कर ली हों, क्लाइंट का सर्टिफ़िकेट और कुंजी डाउनलोड कर ली हो, और ऐक्सेस करने के क्रेडेंशियल बना लिए हों. हालांकि, ऐसा करना ज़रूरी नहीं है. - कनेक्टिविटी की जांच
इन चरणों को शुरू करने से पहले, आपके पास आसान टूल का इस्तेमाल करके कनेक्शन की जांच करने का विकल्प होता है. जैसे, ldapsearch, ADSI, और ldp.exe. अगर आपको LDAP क्लाइंट को सेवा से कनेक्ट करने में गड़बड़ियां आती हैं, तो समस्या हल करने के लिए इन टूल का इस्तेमाल किया जा सकता है. निर्देशों के लिए, सुरक्षित एलडीएपी कनेक्टिविटी की जांच करना लेख पढ़ें. - सेटअप के चरणों को पूरा करने का तरीका
इस पेज पर दिए गए निर्देशों का पालन करके LDAP क्लाइंट को कनेक्ट करने के बाद, आपको LDAP क्लाइंट का सेटअप पूरा करना होगा. इसके लिए, Google Admin console में सेवा की स्थिति को चालू है पर स्विच करें. निर्देशों के लिए, 5. LDAP क्लाइंट के लिए, टॉगल को चालू करें पर स्विच करें.
इस लेख में क्या-क्या शामिल है
इस लेख में ये सेक्शन शामिल हैं:
- बुनियादी कॉन्फ़िगरेशन के निर्देश—इसमें LDAP क्लाइंट को कनेक्ट करने के लिए सामान्य निर्देश शामिल हैं. ये निर्देश इस लेख में नहीं दिए गए हैं.
- कुछ LDAP क्लाइंट के लिए कॉन्फ़िगरेशन से जुड़े निर्देश—इसमें कुछ LDAP क्लाइंट (जैसे, Atlassian Jira या OpenVPN) को Secure LDAP सेवा से कनेक्ट करने के निर्देश शामिल हैं. क्लाइंट के टाइप के हिसाब से, यह तरीका अलग-अलग हो सकता है.
- Java ऐप्लिकेशन के लिए कॉन्फ़िगरेशन के निर्देश—इसमें Java पर आधारित उन ऐप्लिकेशन के लिए सामान्य निर्देश शामिल हैं जो LDAP की सुविधा देते हैं.
- वैकल्पिक: stunnel को प्रॉक्सी के तौर पर इस्तेमाल करना—इस सेक्शन में ऐसे निर्देश शामिल हैं जिनमें डिजिटल सर्टिफ़िकेट के साथ काम न करने वाले एलडीएपी क्लाइंट को कनेक्ट करते समय, अतिरिक्त बातों का ध्यान रखने के बारे में बताया गया है.
इन निर्देशों में यह माना गया है कि डाउनलोड की गई क्लाइंट कुंजी और सर्टिफ़िकेट फ़ाइलों के नाम ldap-client.key और ldap-client.crt हैं.
बेसिक कॉन्फ़िगरेशन के लिए निर्देश
इस सेक्शन में, अपने LDAP क्लाइंट को सुरक्षित एलडीएपी सेवा से कनेक्ट करने के लिए सामान्य निर्देश दिए गए हैं. अगर आपका एलडीएपी क्लाइंट, यहां दिए गए निर्देशों में शामिल नहीं है, तो उस ऐप्लिकेशन के दस्तावेज़ ज़रूर देखें.
ध्यान दें: Atlassian Jira और SSSD जैसे कुछ एलडीएपी क्लाइंट, उपयोगकर्ता की पुष्टि के दौरान उपयोगकर्ता के बारे में ज़्यादा जानकारी पाने के लिए, उपयोगकर्ता की जानकारी ढूंढते हैं. यह पक्का करने के लिए कि ऐसे LDAP क्लाइंट के लिए उपयोगकर्ता की पुष्टि करने की सुविधा सही तरीके से काम करे, आपको उन सभी संगठनात्मक इकाइयों के लिए उपयोगकर्ता की जानकारी पढ़ें सुविधा चालू करनी होगी जहां उपयोगकर्ता के क्रेडेंशियल की पुष्टि करें सुविधा चालू है. (निर्देशों के लिए, ऐक्सेस करने की अनुमतियां कॉन्फ़िगर करना लेख पढ़ें.)
LDAP क्लाइंट को सुरक्षित LDAP सेवा से कनेक्ट करने के लिए:
- अपने LDAP क्लाइंट को Cloud Directory के साथ LDAP सर्वर के तौर पर कॉन्फ़िगर करें.
अपने LDAP क्लाइंट के लिए सर्टिफ़िकेट अपलोड करें.
Secure LDAP सेवा, टीएलएस क्लाइंट सर्टिफ़िकेट का इस्तेमाल पुष्टि करने के मुख्य तरीके के तौर पर करती है. LDAP क्लाइंट पर सर्टिफ़िकेट अपलोड करने की प्रोसेस शुरू करने के लिए, LDAP क्लाइंट की पुष्टि या डायरेक्ट्री सेटिंग खोलें. इसके बाद, नीचे दी गई टेबल में दी गई जानकारी डालें.
ध्यान दें: टीएलएस सर्टिफ़िकेट अपलोड करने के तरीके और इसे कहां अपलोड करना है, इसके बारे में पूरी जानकारी के लिए, कृपया वेंडर का दस्तावेज़ देखें.
कनेक्शन की बुनियादी जानकारी के लिए, यहां दी गई टेबल का इस्तेमाल करें:
|
होस्टनेम |
ldap.google.com |
|---|---|
|
पोर्ट |
StartTLS चालू होने पर LDAP के लिए 389 |
|
बेस डीएन |
डीएन फ़ॉर्मैट में आपका डोमेन. उदाहरण के लिए: example.com के लिए dc=example,dc=com |
|
उपयोगकर्ता नाम और पासवर्ड |
प्रमाणपत्र से पुष्टि करने के अलावा, कुछ LDAP क्लाइंट के लिए आपको उपयोगकर्ता नाम और पासवर्ड डालना होता है. अगर उपयोगकर्ता नाम और पासवर्ड वाले फ़ील्ड में वैल्यू डालना ज़रूरी नहीं है, तो इस चरण को छोड़ा जा सकता है. Google Admin console में जाकर, उपयोगकर्ता नाम और पासवर्ड जनरेट करें. निर्देशों के लिए, ऐक्सेस क्रेडेंशियल जनरेट करना लेख पढ़ें. |
|
क्लाइंट सर्टिफ़िकेट और कुंजी फ़ाइलें |
Google Admin console से डाउनलोड किए गए सर्टिफ़िकेट और कुंजी फ़ाइल का इस्तेमाल करें. अगर LDAP क्लाइंट, क्लाइंट सर्टिफ़िकेट की मदद से पुष्टि करने का कोई तरीका नहीं देता है, तो stunnel को प्रॉक्सी के तौर पर इस्तेमाल करें लेख पढ़ें. अहम जानकारी: Apache Directory Studio जैसे कुछ LDAP क्लाइंट, डिजिटल सर्टिफ़िकेट अपलोड करने की सुविधा के साथ काम नहीं करते. इस समस्या को हल करने के लिए, stunnel को प्रॉक्सी के तौर पर इस्तेमाल करना लेख पढ़ें. |
कुछ LDAP क्लाइंट के लिए कॉन्फ़िगरेशन से जुड़े निर्देश
ADSI Edit (Windows)
यह तरीका अपनाएं:
- क्लाइंट सर्टिफ़िकेट इंस्टॉल करने के लिए, ldp.exe (Windows) में दिए गए पहले से ग्यारहवें चरण तक का तरीका अपनाएं.
- कार्रवाई > इससे कनेक्ट करें… पर जाएं
- कनेक्शन की ये सेटिंग डालें:
नाम: अपने कनेक्शन के लिए कोई नाम डालें. जैसे, Google LDAP.
कनेक्शन पॉइंट: "Select or type a Distinguished Name or Naming Context"
अपना डोमेन नेम DN फ़ॉर्मैट में डालें. उदाहरण के लिए, example.com के लिए dc=example,dc=com.
कंप्यूटर: "कोई डोमेन या सर्वर चुनें या टाइप करें"
ldap.google.com
एसएसएल पर आधारित एन्क्रिप्शन का इस्तेमाल करें: सही का निशान लगा हुआ
- ऐडवांस... पर क्लिक करें और यह जानकारी डालें:
क्रेडेंशियल डालें: चुना गया
उपयोगकर्ता नाम: Admin console से ऐक्सेस क्रेडेंशियल का उपयोगकर्ता नाम
पासवर्ड: Admin console से ऐक्सेस क्रेडेंशियल का पासवर्ड
पोर्ट नंबर: 636
प्रोटोकॉल: LDAP
सिंपल बाइंड ऑथेंटिकेशन: चुना गया
- ठीक है पर क्लिक करें. इसके बाद, ठीक है पर फिर से क्लिक करें.
- कनेक्ट हो जाने पर, बेस डीएन में मौजूद ऐक्टिव डायरेक्ट्री का कॉन्टेंट, दाईं ओर मौजूद पैनल में दिखता है.
Apache Directory Studio
Apache Directory Studio का इस्तेमाल करने के लिए, stunnel के ज़रिए कनेक्ट करें. साथ ही, Google Admin console में जनरेट किए गए ऐक्सेस क्रेडेंशियल (उपयोगकर्ता नाम और पासवर्ड) का इस्तेमाल करें. मान लें कि क्रेडेंशियल मौजूद हैं और stunnel, लोकल होस्ट पोर्ट 1389 पर सुन रहा है. इसके बाद, यह तरीका अपनाएं:
- फ़ाइल > नया… पर क्लिक करें
- LDAP Browser > LDAP Connection को चुनें.
- आगे बढ़ें पर क्लिक करें.
- कनेक्शन के पैरामीटर डालें:
कनेक्शन का नाम: कोई नाम चुनें, जैसे कि Google LDAP
होस्ट का नाम: localhost
पोर्ट: 1389 (या stunnel listen/accept पोर्ट)
एन्क्रिप्शन का तरीका: एन्क्रिप्शन नहीं (ध्यान दें: अगर stunnel को रिमोट से चलाया जा रहा है, तो stunnel और क्लाइंट के बीच एन्क्रिप्शन करने का सुझाव दिया जाता है.)
- आगे बढ़ें पर क्लिक करें.
- पुष्टि करने के पैरामीटर डालें:
पुष्टि करने का तरीका: सामान्य पुष्टि
बाइंड डीएन या उपयोगकर्ता: Admin console से ऐक्सेस क्रेडेंशियल का उपयोगकर्ता नाम
बाइंड पासवर्ड: Admin console से ऐक्सेस क्रेडेंशियल का पासवर्ड
- आगे बढ़ें पर क्लिक करें.
- बेस डीएन डालें.
यह आपका डोमेन नाम है, जो डीएन फ़ॉर्मैट में है. जैसे, example.com के लिए dc=example,dc=com. - पूरा करें पर क्लिक करें.
Atlassian Jira
Atlassian Jira, उपयोगकर्ता की पुष्टि के दौरान उपयोगकर्ता के बारे में ज़्यादा जानकारी पाने के लिए, उपयोगकर्ता की जानकारी खोजता है. यह पक्का करने के लिए कि इस LDAP क्लाइंट के लिए उपयोगकर्ता की पुष्टि करने की सुविधा सही तरीके से काम करे, आपको उन सभी इकाइयों के लिए उपयोगकर्ता की जानकारी पढ़ें और ग्रुप की जानकारी पढ़ें को चालू करना होगा जहां उपयोगकर्ता के क्रेडेंशियल की पुष्टि करें चालू है. (निर्देशों के लिए, ऐक्सेस करने की अनुमतियां कॉन्फ़िगर करना लेख पढ़ें.)
अहम जानकारी: यहां दिए गए निर्देशों का इस्तेमाल करने से, उपयोगकर्ताओं और लॉग फ़ाइलों के लिए keystorePassword का पता चल सकता है. स्थानीय शेल, लॉगफ़ाइल, और Google Admin console को बिना अनुमति के ऐक्सेस करने से रोकने के लिए, ज़रूरी सावधानियां बरतें. नीचे दिए गए निर्देशों के बजाय, stunnel4 तरीके का इस्तेमाल करें. इसके बारे में जानने के लिए, ज़रूरी नहीं: stunnel को प्रॉक्सी के तौर पर इस्तेमाल करना लेख पढ़ें.
ध्यान दें: यहां दिए गए निर्देशों में यह माना गया है कि Jira को /opt/atlassian/jira पर इंस्टॉल किया गया है.
Atlassian Jira क्लाइंट को Secure LDAP सेवा से कनेक्ट करने के लिए:
- सर्टिफ़िकेट और कुंजी को अपने Jira सर्वर पर कॉपी करें. (यह वह सर्टिफ़िकेट है जो Secure LDAP सेवा में LDAP क्लाइंट जोड़ते समय, Google Admin console में जनरेट होता है.)
उदाहरण के लिए:
$ scp ldap-client.key user@jira-server:
- सर्टिफ़िकेट और कुंजियों को Java कीस्टोर फ़ॉर्मैट में बदलें. इस प्रोसेस के दौरान, आपको पासवर्ड डालने के लिए कहा जाएगा. आसानी के लिए, एक सुरक्षित पासवर्ड चुनें और सभी प्रॉम्प्ट के लिए उसी पासवर्ड का इस्तेमाल करें.
$ openssl pkcs12 -export -out jira-ldap.pkcs12 -in ldap-client.crt -inkey ldap-client.key
$ sudo /opt/atlassian/jira/jre/bin/keytool -v -importkeystore -srckeystore jira-ldap.pkcs12 -srcstoretype PKCS12 -destkeystore /opt/atlassian/jira/jira-ldap.jks -deststoretype JKS
- Jira को कॉन्फ़िगर करें, ताकि वह नए बनाए गए कीस्टोर का इस्तेमाल कर सके. विकल्प जोड़ने के लिए, यहां दिए गए निर्देशों का पालन करें:
"-Djavax.net.ssl.keyStore=/opt/atlassian/jira/jira-ldap.jks -Djavax.net.ssl.keyStorePassword=password"
Linux पर:- /opt/atlassian/jira/bin/setenv.sh में बदलाव करें.
- JVM_SUPPORT_RECOMMENDED_ARGS सेटिंग ढूंढें.
- "-Djavax.net.ssl.keyStore=/opt/atlassian/jira/jira-ldap.jks -Djavax.net.ssl.keyStorePassword=password" जोड़ें. साथ ही, "password" को उस पासवर्ड से बदलें जिसे आपने ऊपर चुना है.
- Jira को रीस्टार्ट करें.
$ /opt/atlassian/jira/bin/stop-jira.sh
$ /opt/atlassian/jira/bin/start-jira.sh
- Jira के वेब इंटरफ़ेस में एडमिन के तौर पर साइन इन करें.
- सेटिंग > यूज़र मैनेजमेंट पर जाएं. (सेटिंग के लिए, सबसे ऊपर दाएं कोने में मौजूद गियर आइकॉन पर जाएं.)
- उपयोगकर्ता डायरेक्ट्री पर क्लिक करें.
- निर्देशिका जोड़ें पर क्लिक करें.
- टाइप के तौर पर LDAP चुनें.
- आगे बढ़ें पर क्लिक करें.
- नीचे दी गई चीज़ें डालें:
नाम
Google Secure LDAP
डायरेक्ट्री का टाइप
OpenLDAP
होस्टनेम
ldap.google.com
पोर्ट
636
एसएसएल का इस्तेमाल करना
सही का निशान लगाया गया
प्रयोक्ता नाम
Google Admin console में जाकर, उपयोगकर्ता नाम और पासवर्ड जनरेट करें. निर्देशों के लिए, ऐक्सेस क्रेडेंशियल जनरेट करना लेख पढ़ें.
पासवर्ड
Google Admin console में जाकर, उपयोगकर्ता नाम और पासवर्ड जनरेट करें. निर्देशों के लिए, ऐक्सेस क्रेडेंशियल जनरेट करना लेख पढ़ें.
बेस डीएन
डीएन फ़ॉर्मैट में आपका डोमेन नेम. (उदाहरण के लिए, example.com के लिए dc=example,dc=com)
उपयोगकर्ता का अतिरिक्त डीएन
ज़रूरी नहीं. "ou=Users"
अतिरिक्त ग्रुप डीएन
ज़रूरी नहीं. "ou=Groups"
LDAP की अनुमतियां
रीड ओनली
ऐडवांस सेटिंग
अपरिवर्तित.
उपयोगकर्ता स्कीमा सेटिंग >
उपयोगकर्ता का नाम एट्रिब्यूटgoogleUid
उपयोगकर्ता स्कीमा सेटिंग >
उपयोगकर्ता का नाम RDN एट्रिब्यूटuid
ग्रुप स्कीमा सेटिंग >
ग्रुप ऑब्जेक्ट क्लासgroupOfNames
ग्रुप स्कीमा सेटिंग >
ग्रुप ऑब्जेक्ट फ़िल्टर(objectClass=groupOfNames)
सदस्यता स्कीमा की सेटिंग >
ग्रुप के सदस्यों का एट्रिब्यूटसदस्य
सदस्यता स्कीमा की सेटिंग >
उपयोगकर्ता की सदस्यता एट्रिब्यूट का इस्तेमाल करेंसही का निशान लगाया गया - किसी ग्रुप को भूमिका असाइन करना.
Atlassian Jira किसी उपयोगकर्ता को तब तक लॉग इन करने की अनुमति नहीं दे सकता, जब तक वह ऐसे ग्रुप का सदस्य न हो जिसे Jira का ऐक्सेस दिया गया हो.
किसी ग्रुप को भूमिका असाइन करने के लिए:- सेटिंग > ऐप्लिकेशन > ऐप्लिकेशन का ऐक्सेस पर जाएं.
- ग्रुप चुनें टेक्स्ट बॉक्स में, उस Google ग्रुप का नाम डालें जिसे आपको Jira का ऐक्सेस देना है.
CloudBees Core / Jenkins
CloudBees Core को Secure LDAP सेवा से कनेक्ट करने के निर्देशों के लिए, CloudBees Core को Google Cloud Identity Secure LDAP के साथ कॉन्फ़िगर करना लेख पढ़ें.
FreeRadius
यह तरीका अपनाएं:
- /etc/freeradius/3.0/ पर FreeRADIUS इंस्टॉल और कॉन्फ़िगर करें.
FreeRADIUS इंस्टॉल होने के बाद, freeradius-ldap प्लगिन इंस्टॉल करके, LDAP कॉन्फ़िगरेशन जोड़ा जा सकता है.
$ sudo apt-get install freeradius freeradius-ldap
- LDAP क्लाइंट की और सर्टिफ़िकेट फ़ाइलों को /etc/freeradius/3.0/certs/ldap-client.key और /etc/freeradius/3.0/certs/ldap-client.crt में कॉपी करें.
$ chown freeradius:freeradius
/etc/freeradius/3.0/certs/ldap-client.*
$ chmod 640 /etc/freeradius/3.0/certs/ldap-client.*
- LDAP मॉड्यूल चालू करें.
$ cd /etc/freeradius/3.0/mods-enabled/
$ ln -s ../mods-available/ldap ldap
- /etc/freeradius/3.0/mods-available/ldap में बदलाव करें.
- ldap->server = 'ldaps://ldap.google.com:636'
- identity = ऐप्लिकेशन क्रेडेंशियल से मिला उपयोगकर्ता नाम
- password = ऐप्लिकेशन के क्रेडेंशियल का पासवर्ड
- base_dn = 'dc=domain,dc=com'
- tls->start_tls = no
- tls->certificate_file = /etc/freeradius/3.0/certs/ldap-client.cer
- tls->private_key_file = /etc/freeradius/3.0/certs/ldap-client.key
- tls->require_cert = 'allow'
- ब्रेडक्रंब में मौजूद उन सभी फ़ील्ड को कमेंट आउट करें जो 'ldap -> post-auth -> update' सेक्शन को दिखाते हैं
- /etc/freeradius/3.0/sites-available/default में बदलाव करें.
इससे FreeRadius क्लाइंट कनेक्शन में बदलाव होता है. अगर डिफ़ॉल्ट क्लाइंट का इस्तेमाल नहीं किया जा रहा है, तो पक्का करें कि आपने कॉन्फ़िगर किए गए क्लाइंट (इनर-टनल या कोई कस्टम क्लाइंट) को अपडेट कर दिया हो.
- authorize सेक्शन में बदलाव करके, सबसे नीचे पासवर्ड की पुष्टि करने वाले प्रोटोकॉल (पीएपी) स्टेटमेंट के बाद यह ब्लॉक जोड़ें:
if (User-Password) {
update control {
Auth-Type := ldap
}
}
- authorize सेक्शन में, LDAP को चालू करें. इसके लिए, इससे पहले मौजूद '-' चिह्न को हटाएं.
#
# The ldap module reads passwords from the LDAP database.
ldap
- authenticate सेक्शन में बदलाव करने के लिए, Auth-Type LDAP ब्लॉक में इस तरह बदलाव करें:
# Auth-Type LDAP {
ldap
# }
- Auth-Type PAP ब्लॉक में इस तरह बदलाव करके, authenticate सेक्शन में बदलाव करें:
Auth-Type PAP {
# pap
ldap
}
- authorize सेक्शन में बदलाव करके, सबसे नीचे पासवर्ड की पुष्टि करने वाले प्रोटोकॉल (पीएपी) स्टेटमेंट के बाद यह ब्लॉक जोड़ें:
GitLab
GitLab को सुरक्षित एलडीएपी सेवा से कनेक्ट करने के निर्देशों के लिए, GitLab के लिए Google की सुरक्षित एलडीएपी सेवा को कॉन्फ़िगर करना लेख पढ़ें.
Itopia/Ubuntu
Itopia/Ubuntu को Secure LDAP सेवा से कनेक्ट करने के निर्देशों के लिए, उपयोगकर्ता के लॉगिन के लिए, Ubuntu 16.04 पर Google Cloud Identity LDAP को कॉन्फ़िगर करना लेख पढ़ें.
Ivanti / LanDesk
यह तरीका अपनाएं:
- अपने Ivanti वेब सर्वर पर, इन दोनों फ़ोल्डर में मौजूद OpenLDAPAuthenticationConfiguration.xml या OpenLDAPSSLAuthenticationConfiguration.xml को टेक्स्ट एडिटर में खोलें:
C:\ProgramData\LANDesk\ServiceDesk\servicedesk.Framework और C:\ProgramData\LANDesk\ServiceDesk\servicedesk.WebAccess (यहां servicedesk इंस्टेंस का नाम है) - <Server> वैल्यू को ldap.google.com पर अपडेट करें.
- <Port> वैल्यू को अपडेट करें. StartTLS की सुविधा चालू होने पर, सादे टेक्स्ट के लिए पोर्ट 3268 पर और SSL/TLS पोर्ट के लिए 3269 पर अपडेट करें. डिफ़ॉल्ट रूप से, सादे टेक्स्ट वाले पोर्ट के लिए 389 या SSL/TLS पोर्ट के लिए 636 होता है.
- DN फ़ॉर्मैट में अपने डोमेन नाम के लिए, <TestDN> वैल्यू सेट करें. (उदाहरण के लिए, example.com के लिए dc=example,dc=com).
- ..ProgramData\LANDesk\ServiceDesk\ServiceDesk.Framework\tps.config और ..ProgramData\LANDesk\ServiceDesk\WebAccess\tps.config, दोनों में यह लाइन जोड़ें:
<add key="AuthenticationProvider" value="Touchpaper.Integrations.OpenLDAPLogon.OpenLDAPAuthenticationProvider" />
या यह लाइन जोड़ें:
<add key="AuthenticationProvider" value="Touchpaper.Integrations.OpenLDAPSSLLogon.OpenLDAPSSLAuthenticationProvider" />
- Ivanti Configuration Center में, ज़रूरी इंस्टेंस खोलें.
- Service Desk Framework ऐप्लिकेशन के बगल में मौजूद, बदलाव करें पर क्लिक करें.
आपको Service Desk Framework के लिए, ऐप्लिकेशन में बदलाव करें डायलॉग दिखेगा. - कॉन्फ़िगरेशन पैरामीटर ग्रुप में, लॉगिन नीति सूची में जाकर सिर्फ़ साफ़ तौर पर चुनें. इसके बाद, ठीक है पर क्लिक करें.
- वेब ऐक्सेस ऐप्लिकेशन के बगल में मौजूद, बदलाव करें पर क्लिक करें.
आपको वेब ऐक्सेस के लिए, ऐप्लिकेशन में बदलाव करें डायलॉग दिखेगा. - कॉन्फ़िगरेशन पैरामीटर ग्रुप में, लॉगऑन नीति सूची में जाकर सिर्फ़ एक्सप्लिसिट चुनें. इसके बाद, ठीक है पर क्लिक करें.
लॉग इन करते समय, डोमेन के उस उपयोगकर्ता का नेटवर्क पासवर्ड इस्तेमाल करें जिसके पास ऐक्सेस है.
एलडीएपी सर्वर की पुष्टि करने के लिए अपवाद लॉगिंग
अगर आपको एलडीएपी सर्वर के लिए पुष्टि करने की सुविधा कॉन्फ़िगर करने में समस्याएं आ रही हैं, तो अपवाद लॉगिंग की सुविधा चालू करें. इससे आपको समस्या की पहचान करने में मदद मिलेगी. डिफ़ॉल्ट रूप से, यह सुविधा बंद होती है. हमारा सुझाव है कि जांच पूरी होने के बाद, अपवाद लॉगिंग की सुविधा को फिर से बंद कर दें.
LDAP सर्वर की पुष्टि के लिए, अपवाद लॉगिंग की सुविधा चालू करने के लिए:
- टेक्स्ट एडिटर में, पुष्टि करने के लिए कॉन्फ़िगरेशन वाली सही एक्सएमएल फ़ाइल खोलें:
DirectoryServiceAuthenticationConfiguration.xml, OpenLDAPAuthenticationConfiguration.xml या OpenLDAPSSLAuthenticationConfiguration.xml - लाइन में बदलाव करें:
<ShowExceptions>false</ShowExceptions>
को
<ShowExceptions>true</ShowExceptions>
में बदलें - बदलावों को सेव करें.
Ldp.exe (Windows)
यह तरीका अपनाएं:
- सर्टिफ़िकेट और कुंजी फ़ाइलों को PKCS12 फ़ॉर्मैट वाली एक फ़ाइल में बदलें. कमांड प्रॉम्प्ट पर, यह डालें:
अगर macOS या Linux का इस्तेमाल किया जा रहा है, तो इन कमांड का इस्तेमाल करें:
openssl pkcs12 -inkey ldap-client.key -in ldap-client.crt -export -out ldap-client.p12
आउटपुट फ़ाइल को एन्क्रिप्ट (सुरक्षित) करने के लिए पासवर्ड डालें.
अगर Windows का इस्तेमाल किया जा रहा है, तो इन निर्देशों का इस्तेमाल करें:
$ certutil -mergepfx ldap-client.crt ldap-client.p12
अहम जानकारी: दोनों फ़ाइलें (<CERT_FILE>.crt और <CERT_FILE>.key) एक ही डायरेक्ट्री में होनी चाहिए. यह भी पक्का करें कि key और crt, दोनों का नाम एक जैसा हो (एक्सटेंशन अलग-अलग हो सकता है). इस उदाहरण में, हमने ldap-client.crt और ldap-client.key नाम इस्तेमाल किए हैं. - कंट्रोल पैनल पर जाएं.
- सर्च बॉक्स में, "सर्टिफ़िकेट" खोजें. इसके बाद, उपयोगकर्ता के सर्टिफ़िकेट मैनेज करें पर क्लिक करें.
- कार्रवाई > सभी टास्क > इंपोर्ट करें… पर जाएं
- मौजूदा उपयोगकर्ता चुनें और आगे बढ़ें पर क्लिक करें.
- ब्राउज़ करें… पर क्लिक करें
- डायलॉग बॉक्स के सबसे नीचे दाएं कोने में मौजूद, फ़ाइल टाइप ड्रॉपडाउन में जाकर, पर्सनल इन्फ़ॉर्मेशन एक्सचेंज (*.pfx;*.p12) चुनें.
- दूसरे चरण में बनाई गई ldap-client.p12 फ़ाइल चुनें. इसके बाद, खोलें पर क्लिक करें. फिर, आगे बढ़ें पर क्लिक करें.
- दूसरे चरण में दिया गया पासवर्ड डालें और आगे बढ़ें पर क्लिक करें.
- Personal सर्टिफ़िकेट स्टोर को चुनें. इसके बाद, आगे बढ़ें पर क्लिक करें. इसके बाद, पूरा करें पर क्लिक करें.
- Ldp.exe चलाएं.
- कनेक्शन > कनेक्ट करें... पर जाएं
- कनेक्शन की यह जानकारी डालें:
सर्वर: ldap.google.com
पोर्ट: 636
कनेक्शनलेस: अनचेक किया गया
एसएसएल: चेक किया गया
- ठीक है पर क्लिक करें.
- देखें > ट्री पर जाएं.
- बेस डीएन डालें. यह DN फ़ॉर्मैट में आपका डोमेन नेम है. (उदाहरण के लिए, example.com के लिए dc=example,dc=com).
- ठीक है पर क्लिक करें.
- कनेक्ट हो जाने पर, LDP.exe, दाईं ओर मौजूद पैनल में Active Directory का कॉन्टेंट दिखाता है. जैसे, बेस डीएन में मौजूद सभी एट्रिब्यूट.
Netgate / pfSense
Netgate/pfSense को Secure LDAP सेवा से कनेक्ट करने के निर्देशों के लिए, Google Cloud Identity को पुष्टि करने के सोर्स के तौर पर कॉन्फ़िगर करना लेख पढ़ें.
OpenLDAP / ldapsearch (Linux)
कमांड लाइन से अपनी LDAP डायरेक्ट्री को ऐक्सेस करने के लिए, OpenLDAP ldapsearch कमांड का इस्तेमाल किया जा सकता है.
मान लें कि आपके क्लाइंट सर्टिफ़िकेट और कुंजी फ़ाइलें ldap-client.crt और ldap-client.key हैं, आपका डोमेन example.com है, और उपयोगकर्ता नाम jsmith है:
$ LDAPTLS_CERT=ldap-client.crt LDAPTLS_KEY=ldap-client.key ldapsearch -H ldaps://ldap.google.com -b dc=example,dc=com '(uid=jsmith)'
इससे क्लाइंट की कुंजियों की ओर इशारा करने के लिए, काम के एनवायरमेंट वैरिएबल सेट किए जाते हैं. ldapsearch के अन्य विकल्पों को अपनी पसंद के फ़िल्टर, अनुरोध किए गए एट्रिब्यूट वगैरह से बदला जा सकता है. अन्य जानकारी के लिए, कृपया ldapsearch के मैन पेज ("man ldapsearch") देखें.
ldapsearch (macOS)
यह तरीका अपनाएं:
- सर्टिफ़िकेट और कुंजी फ़ाइलों को PKCS12 फ़ॉर्मैट वाली एक फ़ाइल में बदलें. कमांड प्रॉम्प्ट पर, यह डालें:
openssl pkcs12 -inkey ldap-client.key -in ldap-client.crt -export -out ldap-client.p12
आउटपुट फ़ाइल को एन्क्रिप्ट (सुरक्षित) करने के लिए, अपना पासवर्ड डालें.
- मेन्यू बार के सबसे ऊपर दाएं कोने में मौजूद
पर क्लिक करें. इसके बाद, Keychain Access टाइप करें.
- Keychain Access ऐप्लिकेशन खोलें. इसके बाद, बाईं ओर मौजूद सूची में जाकर सिस्टम पर क्लिक करें.
- सबसे ऊपर बाईं ओर मौजूद मेन्यू बार में, फ़ाइल विकल्प पर क्लिक करें. इसके बाद, आइटम इंपोर्ट करें को चुनें.
- जनरेट की गई ldap-client.p12 फ़ाइल की जगह पर जाएं. इसके बाद, ldap-client.p12 को चुनें और खोलें पर क्लिक करें.
अगर आपसे पासवर्ड डालने के लिए कहा जाए, तो पासवर्ड डालें.
अब आपको सिस्टम कीचेन सर्टिफ़िकेट की सूची में, LDAP Client नाम का सर्टिफ़िकेट दिखेगा. - LDAP क्लाइंट सर्टिफ़िकेट के बगल में मौजूद ऐरो पर क्लिक करें. इसके नीचे एक निजी पासकोड दिखता है.
- निजी कुंजी पर दो बार क्लिक करें.
- डायलॉग बॉक्स में, ऐक्सेस कंट्रोल टैब चुनें. इसके बाद, सबसे नीचे बाएं कोने में मौजूद + पर क्लिक करें.
-
खुलने वाली विंडो में, नई विंडो खोलने के लिए Command+Shift+G टाइप करें. इसके बाद, मौजूदा टेक्स्ट को /usr/bin/ldapsearch से बदलें.
-
Click Go.
इससे ldapsearch हाइलाइट की गई विंडो खुलती है. -
जोड़ें पर क्लिक करें.
-
बदलाव सेव करें पर क्लिक करें. अगर आपसे पासवर्ड डालने के लिए कहा जाता है, तो पासवर्ड डालें.
अब आपके पास कमांड लाइन से अपनी LDAP डायरेक्ट्री को ऐक्सेस करने का विकल्प है. इसके लिए, OpenLDAP ldapsearch कमांड का इस्तेमाल करें.
-
मान लें कि आपने कीचेन में पहले से इंपोर्ट की गई ldap-client.p12 फ़ाइल का नाम LDAP Client है, आपका डोमेन example.com है, और उपयोगकर्ता नाम jsmith है. ऐसे में, यह जानकारी डालें:
$ LDAPTLS_IDENTITY="LDAP Client" ldapsearch -H ldaps://ldap.google.com:636 -b dc=example,dc=com '(uid=jsmith)'
इससे, इंपोर्ट किए गए क्लाइंट सर्टिफ़िकेट की ओर इशारा करने के लिए, काम के एनवायरमेंट वैरिएबल सेट किए जाते हैं. ldapsearch के अन्य विकल्पों को अपनी पसंद के फ़िल्टर, अनुरोध किए गए एट्रिब्यूट वगैरह से बदला जा सकता है. ज़्यादा जानकारी के लिए, कृपया ldapsearch के मैन पेज (man ldapsearch) देखें.
OpenVPN (कम्यूनिटी वर्शन)
यह तरीका अपनाएं:
- अगर ज़रूरी हो, तो OpenVPN को इंस्टॉल और कॉन्फ़िगर करें. अगर आपने पहले ही ऐसा कर लिया है, तो OpenVPN में सेटिंग पेज खोलें.
इस सहायता लेख में, वीपीएन के सामान्य कॉन्फ़िगरेशन के बारे में नहीं बताया गया है. वीपीएन कॉन्फ़िगर करने के बाद, LDAP के ज़रिए उपयोगकर्ता की पुष्टि करने और उसे अनुमति देने की सुविधा जोड़ी जा सकती है. खास तौर पर, आपको openvpn-auth-ldap प्लगिन इंस्टॉल करना होगा.
$ sudo apt-get install openvpn openvpn-auth-ldap
- LDAP क्लाइंट की और सर्टिफ़िकेट फ़ाइलों को /etc/openvpn/ldap-client.key और /etc/openvpn/ldap-client.crt में कॉपी करें.
- /etc/openvpn/auth-ldap.conf नाम की एक फ़ाइल बनाएं. इसमें यह जानकारी शामिल करें. मान लें कि example.com डोमेन नेम है:
<LDAP>
URL ldaps://ldap.google.com:636 #
Timeout 15
TLSEnable false
TLSCACertDir /etc/ssl/certs
TLSCertFile /etc/openvpn/ldap-client.crt
TLSKeyFile /etc/openvpn/ldap-client.key
</LDAP>
<Authorization>
BaseDN "dc=example,dc=com"
SearchFilter "(uid=%u)" # (or choose your own LDAP filter for users)
RequireGroup false
</Authorization>
- OpenVPN कॉन्फ़िगरेशन फ़ाइल में बदलाव करें. इसे अक्सर /etc/openvpn/server.conf या इसी तरह का कोई नाम दिया जाता है. फ़ाइल में सबसे नीचे, यह जोड़ें:
plugin /usr/lib/openvpn/openvpn-auth-ldap.so /etc/openvpn/auth-ldap.conf
verify-client-cert optional
- OpenVPN सर्वर को रीस्टार्ट करें.
$ sudo systemctl restart openvpn@server
- वीपीएन क्लाइंट को कॉन्फ़िगर करें, ताकि वे उपयोगकर्ताओं के उपयोगकर्ता नाम और पासवर्ड का इस्तेमाल कर सकें. उदाहरण के लिए, OpenVPN क्लाइंट कॉन्फ़िगरेशन में, OpenVPN क्लाइंट कॉन्फ़िगरेशन फ़ाइल के आखिर में auth-user-pass जोड़ें और OpenVPN क्लाइंट शुरू करें:
$ openvpn --config /path/to/client.conf
- stunnel को प्रॉक्सी के तौर पर इस्तेमाल करने के लिए दिए गए निर्देशों का पालन करें.
OpenVPN Access Server (कमर्शियल वर्शन)
OpenVPN Access Server को Secure LDAP सेवा से कनेक्ट करने के निर्देशों के लिए, OpenVPN Access Server के साथ Google Secure LDAP को कॉन्फ़िगर करना लेख पढ़ें.
PaperCut MF और NG
PaperCut को Secure LDAP सेवा से कनेक्ट करने के निर्देशों के लिए, PaperCut में Google Workspace और Google Cloud Identity के उपयोगकर्ताओं को सिंक और पुष्टि करने का तरीका लेख पढ़ें.
Puppet Enterprise
Puppet Enterprise को Secure LDAP सेवा से कनेक्ट करने के निर्देशों के लिए, PE के लिए Google Cloud Directory देखें.
Softerra LDAP Browser
अहम जानकारी: शुरू करने से पहले, पक्का करें कि आपने Softerra LDAP Browser का 4.5 (4.5.19808.0) या उसके बाद का वर्शन इंस्टॉल किया हो. LDAP Browser 4.5 देखें.
यह तरीका अपनाएं:
- सर्टिफ़िकेट और कुंजी फ़ाइलों को PKCS12 फ़ॉर्मैट वाली एक फ़ाइल में बदलें. कमांड प्रॉम्प्ट पर, यह डालें:
अगर macOS या Linux का इस्तेमाल किया जा रहा है, तो इन कमांड का इस्तेमाल करें:
openssl pkcs12 -inkey ldap-client.key -in ldap-client.crt -export -out ldap-client.p12
आउटपुट फ़ाइल को एन्क्रिप्ट (सुरक्षित) करने के लिए पासवर्ड डालें.
अगर Windows का इस्तेमाल किया जा रहा है, तो इन निर्देशों का इस्तेमाल करें:
$ certutil -mergepfx ldap-client.crt ldap-client.p12
अहम जानकारी: दोनों फ़ाइलें (<CERT_FILE>.crt और <CERT_FILE>.key) एक ही डायरेक्ट्री में होनी चाहिए. यह भी पक्का करें कि key और crt, दोनों का नाम एक जैसा हो (एक्सटेंशन अलग-अलग हो सकता है). इस उदाहरण में, हमने ldap-client.crt और ldap-client.key नाम इस्तेमाल किए हैं. - Softerra LDAP Browser में, कुंजी का जोड़ा इंस्टॉल करें.
- टूल > सर्टिफ़िकेट मैनेजर पर जाएं.
- इंपोर्ट करें… पर क्लिक करें
- आगे बढ़ें पर क्लिक करें.
- ब्राउज़ करें… पर क्लिक करें
- डायलॉग बॉक्स के सबसे नीचे दाएं कोने में मौजूद, फ़ाइल टाइप ड्रॉप-डाउन सूची में, पर्सनल इन्फ़ॉर्मेशन एक्सचेंज (*.pfx;*.p12) चुनें.
- ऊपर दिए गए दूसरे चरण से, ldap-client.p12 फ़ाइल चुनें.
- खोलें पर क्लिक करें. इसके बाद, आगे बढ़ें पर क्लिक करें.
- ऊपर दिए गए दूसरे चरण में बताया गया पासवर्ड डालें. इसके बाद, आगे बढ़ें पर क्लिक करें.
- Personal सर्टिफ़िकेट स्टोर चुनें.
- आगे बढ़ें पर क्लिक करें.
- पूरा करें पर क्लिक करें.
- कोई सर्वर प्रोफ़ाइल जोड़ें.
- फ़ाइल > नया > नई प्रोफ़ाइल… पर जाएं
- प्रोफ़ाइल का नाम डालें. जैसे, Google LDAP.
- आगे बढ़ें पर क्लिक करें.
यह जानकारी डालें:
होस्ट: ldap.google.com
पोर्ट: 636
बेस डीएन: डीएन फ़ॉर्मैट में आपका डोमेन नाम. (जैसे, example.com के लिए dc=example,dc=com)
सुरक्षित कनेक्शन (एसएसएल) का इस्तेमाल करें: सही का निशान लगा है
- आगे बढ़ें पर क्लिक करें.
- External (SSL Certificate) को चुनें.
- आगे बढ़ें पर क्लिक करें.
- पूरा करें पर क्लिक करें.
Sophos Mobile
Sophos Mobile को Secure LDAP सेवा से कनेक्ट करने के निर्देशों के लिए, Secure LDAP का इस्तेमाल करके Sophos Mobile को Google Cloud Identity / Google Cloud Directory से कनेक्ट करना लेख पढ़ें.
Splunk
Splunk को Secure LDAP सेवा से कनेक्ट करते समय, पक्का करें कि Splunk 8.1.4 या उसके बाद के वर्शन का इस्तेमाल किया जा रहा हो. Splunk के पुराने वर्शन, जैसे कि Splunk 8.1.3 का इस्तेमाल करने पर, LDAP सर्वर को बहुत ज़्यादा LDAP क्वेरी भेजी जा सकती हैं. इससे आपका LDAP कोटा जल्दी खत्म हो सकता है. Splunk के वर्शन 8.1.3 से जुड़ी समस्याओं के बारे में ज़्यादा जानने के लिए, Splunk की जानी-पहचानी समस्याएं देखें.
यह तरीका अपनाएं:
- LDAP क्लाइंट की और सर्टिफ़िकेट फ़ाइलों को /home/splunk/splunkadmin/etc/openldap/certs/ldap-client.key और /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.crt में कॉपी करें.
$ cat /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.crt /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.key > /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.pem
$ sudo chown $(splunkuser):$(splunkuser) /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.*
$ sudo chmod 644 /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.*
- नीचे दिए गए कॉन्फ़िगरेशन जोड़ने के लिए, ldap.conf फ़ाइल में बदलाव करें:
ssl start_tls
TLS_REQCERT never
TLS_CERT /home/splunkadmin/splunk/etc/openldap/certs/ldap.pem
TLS_KEY /home/splunkadmin/splunk/etc/openldap/certs/ldap.pem - उपयोगकर्ता की /home/splunkadmin/.ldaprc फ़ाइल में, ये कॉन्फ़िगरेशन जोड़ें:
TLS_CERT /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.pem
TLS_KEY /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.pem
- Splunk के वेब यूआई का इस्तेमाल करके, LDAP रणनीति जोड़ें. यह जानकारी डालें. इसके बाद, सेव करें पर क्लिक करें:
|
नाम |
Google Secure LDAP |
|---|---|
|
होस्ट |
ldap.google.com |
|
पोर्ट |
636 |
|
एसएसएल चालू है |
सही का निशान लगाया गया |
|
कनेक्शन का क्रम |
1 |
|
डीएन बाइंड करें |
Google Admin console में जनरेट किए गए ऐक्सेस क्रेडेंशियल डालें. |
|
बाइंड डीएन पासवर्ड |
Google Admin console में जनरेट किए गए ऐक्सेस क्रेडेंशियल डालें. |
|
बेस डीएन |
डीएन फ़ॉर्मैट में आपका डोमेन नेम. उदाहरण के लिए, डोमेन example.com के लिए dc=example,dc=com |
|
उपयोगकर्ता आधार फ़िल्टर |
उस ऑब्जेक्ट क्लास के लिए उपयोगकर्ता आधार फ़िल्टर डालें जिसके आधार पर आपको उपयोगकर्ताओं को फ़िल्टर करना है. |
|
उपयोगकर्ता नाम एट्रिब्यूट |
uid |
|
असली नाम एट्रिब्यूट |
displayname |
|
ईमेल एट्रिब्यूट |
मेल |
|
ग्रुप मैपिंग एट्रिब्यूट |
dn |
|
ग्रुप का बेस डीएन |
डीएन फ़ॉर्मैट में आपका डोमेन नेम. उदाहरण के लिए, example.com डोमेन के लिए ou=Groups,dc=example,dc=com |
|
स्टैटिक ग्रुप सर्च फ़िल्टर |
उस ऑब्जेक्ट क्लास के लिए स्टैटिक ग्रुप सर्च फ़िल्टर डालें जिसके आधार पर आपको अपने स्टैटिक ग्रुप फ़िल्टर करने हैं. |
|
ग्रुप का नाम एट्रिब्यूट |
cn |
|
सदस्यता से जुड़ा स्टैटिक एट्रिब्यूट |
सदस्य |
SSSD (Red Hat Enterprise और CentOS)
उपयोगकर्ता की पुष्टि के दौरान, SSSD उपयोगकर्ता के बारे में ज़्यादा जानकारी पाने के लिए, उपयोगकर्ता की जानकारी खोजता है. यह पक्का करने के लिए कि इस LDAP क्लाइंट के लिए उपयोगकर्ता की पुष्टि करने की सुविधा सही तरीके से काम करे, आपको उन सभी इकाइयों के लिए उपयोगकर्ता की जानकारी पढ़ें और ग्रुप की जानकारी पढ़ें को चालू करना होगा जहां उपयोगकर्ता के क्रेडेंशियल की पुष्टि करें चालू है. (निर्देशों के लिए, ऐक्सेस करने की अनुमतियां कॉन्फ़िगर करना लेख पढ़ें.)
Red Hat 8 या CentOS 8 पर मौजूद किसी SSSD क्लाइंट को सुरक्षित LDAP सेवा से कनेक्ट करने के लिए:
- एसएसएसडी क्लाइंट को सुरक्षित एलडीएपी सेवा में जोड़ें:
- Google Admin console में, ऐप्लिकेशन > एलडीएपी > क्लाइंट जोड़ें पर जाएं.
पक्का करें कि आपने अपने कॉर्पोरेट खाते से साइन इन किया हो, न कि अपने निजी Gmail खाते से. - क्लाइंट की जानकारी डालें और जारी रखें पर क्लिक करें.
- ऐक्सेस करने की अनुमतियां कॉन्फ़िगर करें:
उपयोगकर्ता के क्रेडेंशियल की पुष्टि करें—पूरा डोमेन
उपयोगकर्ता की जानकारी पढ़ें—पूरा डोमेन
ग्रुप की जानकारी पढ़ें—चालू है - LDAP क्लाइंट जोड़ें पर क्लिक करें.
- जनरेट किया गया सर्टिफ़िकेट डाउनलोड करें.
- क्लाइंट की जानकारी पर जाएं पर क्लिक करें.
- सेवा का स्टेटस बदलकर चालू है पर सेट करें.
- Google Admin console में, ऐप्लिकेशन > एलडीएपी > क्लाइंट जोड़ें पर जाएं.
- डिपेंडेंसी इंस्टॉल करें:
dnf install openldap-clients sssd-ldap
install -d --mode=700 --owner=sssd --group=root /etc/sssd/ldap
सर्टिफ़िकेट की .zip फ़ाइल को अनज़िप करें और .crt और .key फ़ाइलों को /etc/sssd/ldap में कॉपी करें
- (ज़रूरी नहीं) ldapsearch की मदद से जांच करें:
LDAPTLS_REQCERT=never \
LDAPTLS_KEY=Google.key \
LDAPTLS_CERT=Google.crt \
ldapsearch -H ldaps://ldap.google.com:636/ \
-b dc=example,dc=com \
-D usertoverify@example.com \
-W \
'(mail=usertoverify@example.com)' \
mail dn
प्रॉम्प्ट दिखने पर, उपयोगकर्ता का Google खाता पासवर्ड डालें.
ध्यान दें: उपयोगकर्ता के पास Google Workspace Enterprise या Cloud Identity Premium का लाइसेंस होना चाहिए. - यहां दिए गए कॉन्टेंट के साथ
/etc/sssd/sssd.confफ़ाइल बनाएं:
[sssd]
services = nss, pam
domains = example.com[domain/example.com]
ldap_tls_cert = /etc/sssd/ldap/Google.crt
ldap_tls_key = /etc/sssd/ldap/Google.key
ldap_tls_reqcert = never
ldap_uri = ldaps://ldap.google.com
ldap_search_base = dc=example,dc=com
id_provider = ldap
auth_provider = ldap
ldap_schema = rfc2307bis
ldap_user_uuid = entryUUID - अनुमतियां और SELinux लेबल अपडेट करें:
chown 0:0 /etc/sssd/sssd.conf /etc/sssd/ldap/*
chmod 600 /etc/sssd/sssd.conf /etc/sssd/ldap/*
restorecon -FRv /etc/sssd
- SSSD को रीस्टार्ट करें:
systemctl restart sssd
- टेस्ट:
सर्वर से एसएसएच करें:ssh -l user@example.com {HOSTNAME}
समस्या का हल
- SSSD का वर्शन देखें. यह 1.15.2 या इससे ज़्यादा होना चाहिए:
# sssd --version
2.2.3
-
RHEL/CentOS या SELinux लागू करने वाले किसी भी डिस्ट्रो पर, SSSD कॉन्फ़िगरेशन फ़ाइलें, सर्टिफ़िकेट फ़ाइल, और कुंजी ऐसी डायरेक्ट्री में होनी चाहिए जिसे sssd_conf_t भूमिका ऐक्सेस कर सके:
# egrep "object_r:sssd_conf_t" /etc/selinux/targeted/contexts/files/file_contextsएवीसी के अस्वीकार किए गए मैसेज के लिए, /var/log/audit/audit.log देखें.
- जांच करें कि /etc/nsswitch.conf में passwd, shadow, group, और netgroup इकाइयों के लिए "sss" मौजूद है या नहीं:
passwd: files sss
shadow: files sss
group: files sss
netgroup: files sss
यहां, स्थानीय फ़ाइलें LDAP उपयोगकर्ताओं को बदल देंगी.
- कॉन्फ़िगरेशन से जुड़ी गड़बड़ियों के लिए, /var/log/sssd.conf देखें:
उदाहरण:
[sssd] [sss_ini_add_snippets] (0x0020): Config merge error: File /etc/sssd/sssd.conf did not pass access check. स्किप किया जा रहा है.कार्रवाई: आपको .conf फ़ाइल के लिए chmod 600 कमांड का इस्तेमाल करना होगा.
उदाहरण:
[sssd] [sss_ini_call_validators] (0x0020): [rule/allowed_domain_options]: Attribute 'ldap_groups_use_matching_rule_in_chain' is not allowed in section 'domain/{DOMAIN}'. टाइपिंग की गलतियां देखें.[sssd] [sss_ini_call_validators] (0x0020): [rule/allowed_domain_options]: Attribute 'ldap_initgroups_use_matching_rule_in_chain' is not allowed in section 'domain/{DOMAIN}'. टाइपिंग की गलतियां देखें.
कार्रवाई: sssd.conf से, LDAP एक्सटेंशन के उन ग्रुप मैच को हटाएं जिनका इस्तेमाल नहीं किया जा सकता.
-
LDAP /नेटवर्क/प्रमाणीकरण से जुड़ी गड़बड़ियों के लिए, /var/log/sssd_{DOMAIN}.log देखें.
उदाहरण:[sssd[be[example.com]]] [sss_ldap_init_sys_connect_done] (0x0020): ldap_install_tls failed: [Connect error] [error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed (self signed certificate)]
कार्रवाई: आपको sssd.conf में "ldap_tls_reqcert = never" जोड़ना होगा.
गड़बड़ियों के बारे में ज़्यादा जानकारी पाने के लिए, डोमेन सेक्शन में sssd.conf में "debug_level = 9" जोड़ें. इसके बाद, sssd को फिर से चालू करें.
SSSD (अन्य Linux डिस्ट्रिब्यूशन)
उपयोगकर्ता की पुष्टि के दौरान, SSSD उपयोगकर्ता के बारे में ज़्यादा जानकारी पाने के लिए, उपयोगकर्ता की जानकारी खोजता है. यह पक्का करने के लिए कि इस LDAP क्लाइंट के लिए उपयोगकर्ता की पुष्टि करने की सुविधा सही तरीके से काम करे, आपको उन सभी इकाइयों के लिए उपयोगकर्ता की जानकारी पढ़ें और ग्रुप की जानकारी पढ़ें को चालू करना होगा जहां उपयोगकर्ता के क्रेडेंशियल की पुष्टि करें चालू है. (निर्देशों के लिए, ऐक्सेस करने की अनुमतियां कॉन्फ़िगर करना लेख पढ़ें.)
SSSD क्लाइंट को सुरक्षित LDAP सेवा से कनेक्ट करने के लिए:
- SSSD का वर्शन >= 1.15.2 इंस्टॉल करें.
$ sudo apt-get install sssd
- मान लें कि आपके क्लाइंट सर्टिफ़िकेट और कुंजी फ़ाइलों के नाम /var/ldap-client.crt और /var/ldap-client.key हैं और आपका डोमेन example.com है. ऐसे में, /etc/sssd/sssd.conf को इस तरह के कॉन्फ़िगरेशन के साथ बदलें:
[sssd]
services = nss, pam
domains = example.com[domain/example.com]
ldap_tls_cert = /var/ldap-client.crt
ldap_tls_key = /var/ldap-client.key
ldap_uri = ldaps://ldap.google.com
ldap_search_base = dc=example,dc=com
id_provider = ldap
auth_provider = ldap
ldap_schema = rfc2307bis
ldap_user_uuid = entryUUID
ldap_groups_use_matching_rule_in_chain = true
ldap_initgroups_use_matching_rule_in_chain = true
-
कॉन्फ़िगरेशन फ़ाइल का मालिकाना हक और अनुमति बदलें:
$ sudo chown root:root /etc/sssd/sssd.conf
$ sudo chmod 600 /etc/sssd/sssd.conf -
SSSD को रीस्टार्ट करें:
$ sudo service sssd restart
अहम जानकारी: अगर Google Compute Engine पर बाहरी आईपी पतों के बिना Linux कंप्यूटर पर SSSD मॉड्यूल का इस्तेमाल किया जा रहा है, तो भी Secure LDAP सेवा से कनेक्ट किया जा सकता है. इसके लिए, Google की सेवाओं का इंटरनल ऐक्सेस चालू होना चाहिए. ज़्यादा जानकारी के लिए, Private Google Access को कॉन्फ़िगर करना लेख पढ़ें.
macOS
Secure LDAP सेवा का इस्तेमाल करके, उपयोगकर्ता खाते की पुष्टि करने के लिए, macOS क्लाइंट को कनेक्ट करने के लिए यहां दिया गया तरीका अपनाएं.
सिस्टम की ज़रूरतें
- macOS का वर्शन Catalina 10.15.4 या इसके बाद का होना चाहिए.
- तैयारी के चरण में पहला चरण पूरा करने के लिए, Google के सुपर एडमिन का User-ID ज़रूरी है.
- इस कॉन्फ़िगरेशन को पूरा करने के लिए, आपके पास स्थानीय एडमिन की अनुमतियां होनी चाहिए.
कॉन्टेंट:
इस सेक्शन में दिए गए निर्देशों में, सुरक्षित एलडीएपी सेवा का इस्तेमाल करके macOS पर पुष्टि करने की सुविधा को मैन्युअल तरीके से सेट अप करने और उसकी जांच करने का तरीका बताया गया है.
पहला चरण: Google Admin console में, macOS को LDAP क्लाइंट के तौर पर शामिल करना
निर्देशों के लिए, LDAP क्लाइंट जोड़ना लेख पढ़ें या सुरक्षित एलडीएपी का यह डेमो देखें. इस प्रोसेस के दौरान, आपको अपने-आप जनरेट होने वाला टीएलएस क्लाइंट सर्टिफ़िकेट भी डाउनलोड करना होगा.
दूसरा चरण: सिस्टम कीचेन में सर्टिफ़िकेट इंपोर्ट करना
- सर्टिफ़िकेट (पहले चरण में डाउनलोड की गई ZIP फ़ाइल) और पासकोड को macOS वाले डिवाइस पर कॉपी करें.
अहम जानकारी: सर्ट और कुंजी वाली फ़ाइलें ढूंढने के लिए, फ़ाइल को अनज़िप करें. - की-वैल्यू पेयर को सिस्टम कीचेन में इंपोर्ट करें:
-
पासकोड और सर्टिफ़िकेट को PKCS 12 (p12) फ़ाइल में बदलें. टर्मिनल में यह कमांड चलाएं:
openssl pkcs12 -export -out ldap-client.p12 -in ldap-client.crt -inkey ldap-client.key
अहम जानकारी: .p12 फ़ाइल का नाम लिख लें.
सिस्टम आपसे पासवर्ड डालने के लिए कहेगा. p12 फ़ाइल को एन्क्रिप्ट (सुरक्षित) करने के लिए पासवर्ड डालें. -
Keychain Access ऐप्लिकेशन खोलें.
-
सिस्टम कीचेन पर क्लिक करें.
-
फ़ाइल > आइटम इंपोर्ट करें पर क्लिक करें.
-
ऊपर बनाई गई ldap-client.p12 फ़ाइल चुनें.
-
अगर आपसे कहा जाए, तो सिस्टम कीचेन में बदलाव करने की अनुमति देने के लिए एडमिन पासवर्ड डालें.
-
.p12 फ़ाइल को डिक्रिप्ट करने के लिए, ऊपर बनाया गया पासवर्ड डालें.
ध्यान दें: आपको कुंजियों की सूची में एक नया सर्टिफ़िकेट और उससे जुड़ी निजी कुंजी दिखेगी. इसे LDAP क्लाइंट कहा जा सकता है. नीचे दिए गए अगले चरण के लिए, सर्टिफ़िकेट का नाम लिख लें.
- नीचे दिए गए ऐप्लिकेशन जोड़ने के लिए, निजी कुंजी के लिए ऐक्सेस कंट्रोल सेट अप करने के लिए, इस लेख में ldapsearch (macOS) सेक्शन में दिए गए छठे चरण का पालन करें. अगर निजी कुंजी, सभी आइटम कैटगरी में नहीं दिख रही है, तो मेरे सर्टिफ़िकेट कैटगरी पर स्विच करें. इसके बाद, संबंधित सर्टिफ़िकेट को बड़ा करके, निजी कुंजी की सही एंट्री ढूंढें.
निर्देशों में बताया गया ldapsearch ऐप्लिकेशन, सिर्फ़ समस्या हल करने के लिए काम का है. इसका इस्तेमाल अन्य कामों के लिए नहीं किया जा सकता. आम तौर पर, उपयोगकर्ताओं को macOS का ऐक्सेस देने से पहले इसे हटा दिया जाता है.
ऐक्सेस कंट्रोल वाली सूची में ये तीन ऐप्लिकेशन जोड़े जाने चाहिए:
/System/Library/CoreServices/Applications/Directory Utility
/usr/libexec/opendirectoryd
/usr/bin/dscl
-
-
/etc/openldap/ldap.conf फ़ाइल में एक लाइन जोड़ें. साथ ही, यह पक्का करें कि "LDAP Client" का नाम, .p12 फ़ाइल इंपोर्ट करने के बाद macOS Keychain Access ऐप्लिकेशन में दिखाए गए सर्टिफ़िकेट के नाम से मेल खाता हो. यह नाम, जनरेट किए गए सर्टिफ़िकेट के X.509 Subject Common Name से मिलता है:
sudo bash -c 'echo -e "TLS_IDENTITY\tLDAP Client" >> /etc/openldap/ldap.conf'
तीसरा चरण: पुष्टि करने के लिए, डिवाइस को Google डायरेक्ट्री पर ले जाना
नया LDAP डायरेक्ट्री नोड बनाने के लिए, Directory Utility ऐप्लिकेशन खोलें:
- बदलाव करने के लिए, लॉक पर क्लिक करें और अपना पासवर्ड डालें.
- LDAPv3 चुनें. इसके बाद, सेटिंग में बदलाव करने के लिए पेंसिल आइकॉन पर क्लिक करें.
- नया… पर क्लिक करें
- सर्वर के नाम के लिए, ldap.google.com डालें. इसके बाद, Encrypt using SSL को चुनें और Manual पर क्लिक करें.
- सर्वर का नया नाम चुनें और बदलाव करें… पर क्लिक करें
- कॉन्फ़िगरेशन के नाम के लिए, जानकारी देने वाला नाम डालें. जैसे, Google Secure LDAP.
- एसएसएल का इस्तेमाल करके एन्क्रिप्ट (सुरक्षित) करें को चुनें. साथ ही, पक्का करें कि पोर्ट 636 पर सेट हो.
- खोज और मैपिंग टैब पर जाएं.
- इस LDAPv3 सर्वर को इस्तेमाल करके ऐक्सेस करें ड्रॉपडाउन सूची से RFC2307 चुनें.
- जब कहा जाए, तब डोमेन से जुड़ी जानकारी को सर्च बेस सफ़िक्स में डालें. उदाहरण के लिए, zomato.com के डोमेन नाम के लिए,
dc=zomato,dc=comडालें. - ठीक है पर क्लिक करें.
- उपयोगकर्ता रिकॉर्ड टाइप में एट्रिब्यूट कॉन्फ़िगर करें:
- रिकॉर्ड टाइप और एट्रिब्यूट सेक्शन में, उपयोगकर्ता चुनें और "+" बटन पर क्लिक करें.
- पॉप-अप विंडो में, एट्रिब्यूट टाइप चुनें. इसके बाद, GeneratedUID चुनें. इसके बाद, पॉप-अप विंडो बंद करने के लिए, OK पर क्लिक करें.
एक्सपैंड होने के बाद, GeneratedUID को उपयोगकर्ताओं के सेक्शन में दिखाया जाना चाहिए.
- GeneratedUID पर क्लिक करें. इसके बाद, दाईं ओर मौजूद बॉक्स में "+" आइकॉन पर क्लिक करें.
- टेक्स्ट बॉक्स में apple-generateduid डालें और Enter पर क्लिक करें.
- Users नोड में जाकर, NFSHomeDirectory एट्रिब्यूट पर क्लिक करें.
- दाईं ओर मौजूद स्क्रीन में, इस एट्रिब्यूट की वैल्यू को
#/Users/$uid$पर अपडेट करें - बदलावों को सेव करने के लिए, ठीक है पर क्लिक करें और अपना पासवर्ड डालें.
- Directory Utility विंडो में जाकर, नया LDAP कॉन्फ़िगरेशन सेट अप करें:
- खोज से जुड़ी नीति टैब पर जाएं.
- बदलाव करने के लिए, लॉक आइकॉन पर क्लिक करें. इसके बाद, निर्देश मिलने पर मौजूदा उपयोगकर्ता का पासवर्ड डालें.
- ड्रॉपडाउन मेन्यू में मौजूद विकल्प को सर्च पाथ से बदलकर कस्टम पाथ करें.
- पुष्टि टैब खोलें और "+" आइकॉन पर क्लिक करें.
- डायरेक्ट्री डोमेन की सूची से
/LDAPv3/ldap.google.comचुनें. इसके बाद, जोड़ें पर क्लिक करें. - लागू करें बटन पर क्लिक करें. अगर आपसे कहा जाए, तो एडमिन का पासवर्ड डालें.
- DIGEST-MD5, CRAM-MD5, NTLM, और GSSAPI SASL ऑथेंटिकेशन मैकेनिज़्म को बंद करने के लिए, ये चार कमांड चलाएं. macOS, Google की सुरक्षित LDAP सेवा का इस्तेमाल करके पुष्टि करने के लिए, सिंपल बाइंड का इस्तेमाल करेगा:
sudo /usr/libexec/PlistBuddy -c "add ':module options:ldap:Denied SASL Methods:' string DIGEST-MD5" /Library/Preferences/OpenDirectory/Configurations/LDAPv3/ldap.google.com.plist
sudo /usr/libexec/PlistBuddy -c "add ':module options:ldap:Denied SASL Methods:' string CRAM-MD5" /Library/Preferences/OpenDirectory/Configurations/LDAPv3/ldap.google.com.plist
sudo /usr/libexec/PlistBuddy -c "add ':module options:ldap:Denied SASL Methods:' string NTLM" /Library/Preferences/OpenDirectory/Configurations/LDAPv3/ldap.google.com.plist
sudo /usr/libexec/PlistBuddy -c "add ':module options:ldap:Denied SASL Methods:' string GSSAPI" /Library/Preferences/OpenDirectory/Configurations/LDAPv3/ldap.google.com.plist
- OpenDirectory कॉन्फ़िगरेशन को फिर से लोड करने के लिए, रीबूट करें.
चौथा चरण: मोबाइल खाता बनाना (इससे ऑफ़लाइन लॉगिन किया जा सकता है)
Google Workspace या Cloud Identity का कोई भी उपयोगकर्ता, अपने उपयोगकर्ता नाम और पासवर्ड का इस्तेमाल करके, नेटवर्क खाते (Google खाता) से लॉग इन कर सकता है. लॉग इन करने की इस प्रोसेस के लिए, इंटरनेट कनेक्शन होना ज़रूरी है. अगर किसी व्यक्ति को नेटवर्क से कनेक्ट किए बिना या कनेक्ट करके लॉग इन करना है, तो मोबाइल खाता बनाया जा सकता है. मोबाइल खाते की मदद से, नेटवर्क खाते (Google खाता) के उपयोगकर्ता नाम और पासवर्ड का इस्तेमाल करके साइन इन किया जा सकता है. इसके लिए, नेटवर्क से कनेक्ट होना ज़रूरी नहीं है. ज़्यादा जानकारी के लिए, Mac पर मोबाइल खाते बनाना और उन्हें कॉन्फ़िगर करना लेख पढ़ें.
Secure LDAP का इस्तेमाल करने वाले लोगों के लिए मोबाइल खाता बनाने का तरीका:
-
Secure LDAP सर्वर से कनेक्ट करने के लिए, यह कमांड चलाएं. साथ ही, होम पाथ और मोबाइल खाता सेट अप करें:
sudo /System/Library/CoreServices/ManagedClient.app/Contents/Resources/createmobileaccount -n $uid -v
अहम जानकारी: $uid को उपयोगकर्ता के Google खाते से जुड़े ईमेल पते के उपयोगकर्ता नाम वाले हिस्से से बदलें. उदाहरण के लिए, jsmith@solarmora.com में jsmith, उपयोगकर्ता नाम वाला हिस्सा है. -
जब आपसे SecureToken एडमिन उपयोगकर्ता नाम मांगा जाए, तब अपना एडमिन उपयोगकर्ता नाम डालें. इसके बाद, अगले प्रॉम्प्ट में अपना पासवर्ड डालें. इससे FileVault में $uid जुड़ जाएगा. अगर macOS डिस्क एन्क्रिप्ट (सुरक्षित) की गई है, तो इसकी ज़रूरत होती है.
पांचवां चरण: (ज़रूरी नहीं) लॉगिन स्क्रीन की सेटिंग सेट करना
- सबसे नीचे बाईं ओर मौजूद, सिस्टम की प्राथमिकताएं > उपयोगकर्ता और ग्रुप > लॉगिन के विकल्प पर जाएं.
- एडमिन क्रेडेंशियल डालकर, लॉक को अनलॉक करें.
- लॉगिन विंडो को इस तरह दिखाएं को बदलकर नाम और पासवर्ड करें.
छठा चरण: डिवाइस को रीबूट करें और उसमें लॉग इन करें
- पक्का करें कि डिवाइस इंटरनेट से कनेक्ट हो. अगर आपके पास इंटरनेट कनेक्शन नहीं है, तो Secure LDAP उपयोगकर्ता के लिए लॉगिन काम नहीं करेगा.
ध्यान दें: पहली बार लॉगिन करने के लिए ही इंटरनेट कनेक्शन की ज़रूरत होती है. इसके बाद, बिना इंटरनेट के भी लॉगिन किया जा सकता है. - डिवाइस में उस उपयोगकर्ता खाते से साइन इन करें जिसे पुष्टि करने के लिए, Secure LDAP का इस्तेमाल करने के लिए कॉन्फ़िगर किया गया है.
इस सेक्शन में दिए गए निर्देशों में, उपयोगकर्ताओं के लिए डिवाइस कॉन्फ़िगरेशन को अपने-आप होने वाली प्रोसेस के तौर पर सेट अप करने पर फ़ोकस किया गया है. नीचे दिए गए पहले और दूसरे चरण को उसी macOS डिवाइस पर पूरा करें जिस पर आपने तैयारी के दौरान मैन्युअल कॉन्फ़िगरेशन किया था.
पहला चरण: Apple Configurator 2 का इस्तेमाल करके, सर्टिफ़िकेट के साथ Mac प्रोफ़ाइल बनाना
- उस मशीन पर Apple Configurator 2 इंस्टॉल करें जहां आपने Secure LDAP की मदद से, macOS की पुष्टि करने की सुविधा को मैन्युअल तरीके से कॉन्फ़िगर किया है.
- Apple Configurator 2 खोलें. इसके बाद, नई प्रोफ़ाइल बनाएं. अब Certificate सेक्शन में जाकर, Configure पर क्लिक करें. इसके बाद, पहले जनरेट की गई .p12 फ़ाइल इंपोर्ट करें.
ध्यान दें: पक्का करें कि इस .p12 फ़ाइल का पासवर्ड सेट हो. इस पासवर्ड को सर्टिफ़िकेट के पासवर्ड सेक्शन में डालें.
- इस प्रोफ़ाइल को सेव करें.
- (M1 या M2 प्रोसेसर का इस्तेमाल करने वाले डिवाइसों के लिए, यह चरण छोड़ें और पाँचवें चरण पर जाएँ. ) इस प्रोफ़ाइल को किसी भी टेक्स्ट एडिटर में खोलें और पहले <dict> टैग में ये लाइनें जोड़ें:
<key>PayloadScope</key>
<string>System</string>
इसे इसलिए जोड़ा गया है, क्योंकि Apple Configurator अब तक macOS के लिए प्रोफ़ाइलें बनाने की सुविधा नहीं देता है.
- दूसरे <dict> टैग में, सर्टिफ़िकेट डेटा के साथ-साथ ये लाइनें जोड़ें:
<key>AllowAllAppsAccess</key>
<true/>
इससे यह पक्का हो जाएगा कि इस सर्टिफ़िकेट को सभी ऐप्लिकेशन ऐक्सेस कर सकते हैं.
दूसरा चरण: डायरेक्ट्री कॉन्फ़िगरेशन फ़ाइल (plist) को xml में बदलना
इस चरण में, आपको उन सभी मैन्युअल कॉन्फ़िगरेशन को एक्सएमएल फ़ाइल में एक्सट्रैक्ट करना होता है जिन्हें आपने तैयारी के तीसरे चरण में पूरा किया था. इस फ़ाइल और ऊपर दिए गए पहले चरण में बनाई गई Mac प्रोफ़ाइल का इस्तेमाल करके, अन्य macOS डिवाइसों को अपने-आप कॉन्फ़िगर किया जा सकता है.
- /Library/Preferences/OpenDirectory/Configurations/LDAPv3/ldap.google.com.plist को अपने डेस्कटॉप या किसी दूसरी जगह पर कॉपी करें.
- इसे एक्सएमएल में बदलें, ताकि इसे किसी भी टेक्स्ट एडिटर में देखा जा सके. टर्मिनल में यह कमांड चलाएं:
sudo plutil -convert xml1 <path>/ldap.google.com.plist
आपके पास<path>/ldap.google.com.plistके तौर पर फ़ाइल को ऐक्सेस करने का विकल्प है.
- ऊपर दी गई फ़ाइल की अनुमति बदलें, ताकि आपके पास एक्सएमएल फ़ाइल खोलने का विकल्प हो. पक्का करें कि यह खाली न हो.
तीसरा चरण: असली उपयोगकर्ताओं के डिवाइसों पर कॉन्फ़िगरेशन को अपने-आप पूरा करने के लिए, Python स्क्रिप्ट बनाना
नीचे दी गई Python स्क्रिप्ट को कॉपी करें और इसे Python फ़ाइल (.py फ़ाइल) के तौर पर सेव करें.
ध्यान दें: यह सैंपल स्क्रिप्ट, Python के 3.10.x वर्शन के साथ काम करने के लिए डिज़ाइन की गई है. यह स्क्रिप्ट, बिना किसी बदलाव के उपलब्ध कराई गई है. Google सहायता टीम, सैंपल स्क्रिप्ट के लिए सहायता नहीं देगी.
Ldap_python_config.py
#!/usr/bin/python
from OpenDirectory import ODNode, ODSession, kODNodeTypeConfigure
from Foundation import NSMutableData, NSData
import os
import sys
# Reading plist
GOOGLELDAPCONFIGFILE = open(sys.argv[1], "r")
CONFIG = GOOGLELDAPCONFIGFILE.read()
GOOGLELDAPCONFIGFILE.close()
# Write the plist
od_session = ODSession.defaultSession()
od_conf_node, err = ODNode.nodeWithSession_type_error_(od_session, kODNodeTypeConfigure, None)
request = NSMutableData.dataWithBytes_length_(b' '*32, 32)
request.appendData_(NSData.dataWithBytes_length_(str.encode(CONFIG), len(CONFIG)))
response, err = od_conf_node.customCall_sendData_error_(99991, request, None)
# Edit the default search path and append the new node to allow for login
os.system("dscl -q localhost -append /Search CSPSearchPath /LDAPv3/ldap.google.com")
os.system("bash -c 'echo -e \"TLS_IDENTITY\tLDAP Client\" >> /etc/openldap/ldap.conf' ")
चौथा चरण: असली उपयोगकर्ता के डिवाइसों को अपने-आप कॉन्फ़िगर करना
उन macOS डिवाइसों पर जाएं जिन्हें आपको कॉन्फ़िगर करना है और यह तरीका अपनाएं:
- पहले चरण में जनरेट की गई Mac प्रोफ़ाइल फ़ाइल, दूसरे चरण में जनरेट की गई एक्सएमएल कॉन्फ़िगरेशन फ़ाइल, और तीसरे चरण में जनरेट की गई Python स्क्रिप्ट को डिवाइस पर कॉपी करें.
- स्क्रिप्ट के लिए ज़रूरी सॉफ़्टवेयर इंस्टॉल करने के लिए, यह कमांड चलाएं:
python3 -m pip install pyobjc-framework-opendirectory - यह कमांड चलाएं:
sudo python </path/to/saved_python_script> </path/to/ldap.google.com.plist generated in step 2> - macOS सिस्टम कीचेन में सर्टिफ़िकेट इंपोर्ट करने के लिए, पहले चरण में जनरेट की गई Mac प्रोफ़ाइल फ़ाइल पर दो बार क्लिक करें. इसके बाद, macOS के लोकल एडमिन के क्रेडेंशियल डालें. इसके बाद, आपको .p12 फ़ाइल का वह पासवर्ड डालने के लिए कहा जाएगा जिसे आपने तैयारी के दौरान सेट किया था.
- macOS मशीन को रीस्टार्ट करें.
- तैयारी के चरण के चौथे चरण में दिए गए निर्देशों के मुताबिक, मोबाइल खाते बनाएं. इसके अलावा, तैयारी के चरण के पांचवें चरण में बताई गई अन्य सेटिंग भी सेट की जा सकती हैं.
- Google क्रेडेंशियल का इस्तेमाल करके macOS में साइन इन करने वाले उपयोगकर्ताओं के लिए, यह ज़रूरी है कि उनके Workspace खाते का उपयोगकर्ता नाम, macOS की उपयोगकर्ता प्रोफ़ाइल के उपयोगकर्ता आईडी से अलग हो. ऐसा न होने पर, उन्हें साइन इन करने से रोक दिया जाएगा.
- जब कोई उपयोगकर्ता Google क्रेडेंशियल का इस्तेमाल करके macOS में साइन इन करता है, तो उपयोगकर्ता के पासवर्ड को मैनेज करने (रीसेट या रिकवर करने) की प्रोसेस, Google की वेबसाइट पर होनी चाहिए. उदाहरण के लिए, myaccount.google.com पर या Google Admin console में. अगर आपको पासवर्ड मैनेज करने के लिए, तीसरे पक्ष के किसी समाधान का इस्तेमाल करना है, तो पक्का करें कि नया पासवर्ड Google के साथ सिंक हो गया हो.
- अगर एडमिन ने अगली बार साइन इन करने पर पासवर्ड बदलने के लिए कहें सेटिंग चालू करके, नया उपयोगकर्ता बनाया है या किसी मौजूदा उपयोगकर्ता का पासवर्ड रीसेट किया है, तो उपयोगकर्ता एडमिन की ओर से सेट किए गए अस्थायी पासवर्ड का इस्तेमाल करके, Mac में साइन इन नहीं कर पाएगा.
समस्या हल करने का तरीका: उपयोगकर्ता को किसी दूसरे डिवाइस (उदाहरण के लिए, मोबाइल डिवाइस या कोई अन्य डेस्कटॉप डिवाइस) का इस्तेमाल करके Google में साइन इन करना होगा. इसके बाद, उसे एक स्थायी पासवर्ड सेट करना होगा. इसके बाद, नए पासवर्ड का इस्तेमाल करके macOS में साइन इन करना होगा. - Mac को ऐक्टिव इंटरनेट कनेक्शन से कनेक्ट किया जाना चाहिए, ताकि ऊपर दिए गए कॉन्फ़िगरेशन के बाद पहली बार साइन इन करते समय, ldap.google.com को ऐक्सेस किया जा सके. अगर आपने मोबाइल खाता सेट अप करने का विकल्प चुना है, तो इसके बाद साइन इन करने के लिए आपको इंटरनेट ऐक्सेस की ज़रूरत नहीं होगी.
- macOS के साथ Google Secure LDAP इंटिग्रेशन की जांच macOS Catalina, Big Sur, और Monterey पर की गई है.
अगर आपको Secure LDAP सेवा से कनेक्ट करने में समस्याएं आ रही हैं, तो यहां दिया गया तरीका अपनाएं.
पहला चरण: कनेक्शन की पुष्टि करें.
odutil का इस्तेमाल करके कनेक्शन की पुष्टि करें.
टर्मिनल में, odutil show nodenames कमांड चलाएं.
पुष्टि करें कि /LDAPv3/ldap.google.com का स्टेटस ऑनलाइन है. अगर यह ऑनलाइन नहीं है, तो टेलनेट विकल्प आज़माएं.
nc का इस्तेमाल करके कनेक्शन की पुष्टि करें.
टर्मिनल में यह कमांड चलाएं: nc -zv ldap.google.com 636
अगर इस तरीके से Google से कनेक्ट नहीं हो पा रहा है, तो IPv4 का इस्तेमाल करके कनेक्ट करने की कोशिश करें.
IPv4 से कनेक्शन की पुष्टि करें.
अपने डिवाइस पर आईपीवी4 का इस्तेमाल करने के लिए, यह तरीका अपनाएं:
- सिस्टम की सेटिंग > नेटवर्क > वाई-फ़ाई > ऐडवांस पर जाएं.
- ऐडवांस मेन्यू में जाकर, टीसीपी/आईपी टैब पर जाएं.
- ड्रॉप-डाउन मेन्यू में, IPv6 कॉन्फ़िगर करें को बदलकर सिर्फ़ लिंक-लोकल चुनें.
- बदलावों को सेव करने के लिए, ठीक है पर क्लिक करें. इसके बाद, लागू करें पर क्लिक करें.
- ldapsearch कनेक्टिविटी और मान्य खोज के ज़रिए, सेवा की पुष्टि की जांच करें.
दूसरा चरण: देखें कि आपको डायरेक्ट्री ऑब्जेक्ट दिख रहे हैं या नहीं.
- Directory Utility खोलें. इसके बाद, Directory Editor टैब खोलें.
- ड्रॉप-डाउन सूची में, /LDAPv3/ldap.google.com नोड चुनें.
- पुष्टि करें कि आपको अपने Google डोमेन के उपयोगकर्ता और ग्रुप दिख रहे हैं या नहीं.
Java ऐप्लिकेशन के लिए कॉन्फ़िगरेशन के निर्देश
LDAP की सुविधा देने वाले ज़्यादातर Java ऐप्लिकेशन को, क्लाइंट सर्टिफ़िकेट से पुष्टि करने के लिए कॉन्फ़िगर किया जा सकता है. इसके लिए, आपको ऐप्लिकेशन के कीस्टोर में क्लाइंट सर्टिफ़िकेट इंस्टॉल करने होंगे. कॉन्फ़िगरेशन फ़ाइलें, ऐप्लिकेशन के हिसाब से अलग-अलग होंगी. हालांकि, प्रोसेस आम तौर पर एक जैसी होती है. सेटअप के लिए, OpenSSL और Java Runtime Environment इंस्टॉल करना ज़रूरी है.
सर्टिफ़िकेट और कुंजियों को Java कीस्टोर फ़ॉर्मैट में बदलें. इस प्रोसेस के दौरान, आपको कई बार पासवर्ड डालने के लिए कहा जाएगा. कोई सुरक्षित पासवर्ड चुनें और सभी प्रॉम्प्ट में उसी पासवर्ड का इस्तेमाल करें. मान लें कि आपकी क्लाइंट कुंजी फ़ाइल का नाम ldap-client.key है:
अगर macOS या Linux का इस्तेमाल किया जा रहा है, तो इन कमांड का इस्तेमाल करें:
$ openssl pkcs12 -export -out java-application-ldap.pkcs12 -in ldap-client.crt -inkey ldap-client.keyअगर Windows का इस्तेमाल किया जा रहा है, तो इन निर्देशों का इस्तेमाल करें:
$ certutil -mergepfx ldap-client.crt java-application-ldap.pkcs12अहम जानकारी: दोनों फ़ाइलें (<CERT_FILE>.crt और <CERT_FILE>.key) एक ही डायरेक्ट्री में होनी चाहिए. यह भी पक्का करें कि key और crt, दोनों का नाम एक जैसा हो (हालांकि, दोनों के एक्सटेंशन अलग-अलग होने चाहिए). इस उदाहरण में, हमने ldap-client.crt और ldap-client.key नाम इस्तेमाल किए हैं.
सर्टिफ़िकेट को कीस्टोर में इंपोर्ट करें:
$ keytool -v -importkeystore -srckeystore java-application-ldap.pkcs12 -srcstoretype PKCS12 -destkeystore java-application-ldap.jks -deststoretype JKSऐप्लिकेशन के हिसाब से, Java प्रॉपर्टी को अलग-अलग तरीकों से कॉन्फ़िगर किया जा सकता है. अक्सर, इन्हें शुरू करने के लिए इस्तेमाल की जाने वाली "java" कमांड लाइन पर -D विकल्प के साथ सेट किया जा सकता है. अपने ऐप्लिकेशन के लिए Java प्रॉपर्टी सेट करें:
javax.net.ssl.keyStore = /<path-to>/java-application-ldap.jks javax.net.ssl.keyStorePassword = <password selected above>कॉन्फ़िगरेशन के बारे में बुनियादी निर्देश में दी गई जानकारी का इस्तेमाल करके, ऐप्लिकेशन के एलडीएपी कनेक्शन की सेटिंग कॉन्फ़िगर करें.
ज़रूरी नहीं: stunnel को प्रॉक्सी के तौर पर इस्तेमाल करना
जिन क्लाइंट में क्लाइंट सर्टिफ़िकेट की मदद से LDAP में पुष्टि करने का विकल्प नहीं होता उनके लिए, stunnel को प्रॉक्सी के तौर पर इस्तेमाल करें.
LDAP सर्वर को क्लाइंट सर्टिफ़िकेट देने के लिए stunnel को कॉन्फ़िगर करें. साथ ही, stunnel से कनेक्ट करने के लिए अपने क्लाइंट को कॉन्फ़िगर करें. हमारा सुझाव है कि आप stunnel को उसी सर्वर पर चलाएं जिस पर आपका ऐप्लिकेशन चलता है. साथ ही, इसे सिर्फ़ स्थानीय तौर पर सुनें, ताकि आप अपनी एलडीएपी डायरेक्ट्री को उस सर्वर से बाहर न दिखाएं.
यह तरीका अपनाएं:
stunnel इंस्टॉल करें. उदाहरण के लिए, Ubuntu पर:
$ sudo apt-get install stunnel4नीचे दिए गए कॉन्टेंट के साथ, /etc/stunnel/google-ldap.conf कॉन्फ़िगरेशन फ़ाइल बनाएं. इसमें यह माना गया है कि ldap-client.crt सर्टिफ़िकेट है और ldap-client.key कुंजी है:
[ldap]
client = yes
accept = 127.0.0.1:1636
connect = ldap.google.com:636
cert = ldap-client.crt
key = ldap-client.keystunnel को चालू करने के लिए, /etc/default/stunnel4 में बदलाव करें और ENABLED=1 सेट करें.
stunnel को रीस्टार्ट करें.
$ sudo /etc/init.d/stunnel4 restartअपने ऐप्लिकेशन को ldap://127.0.0.1:1636 पर पॉइंट करने के लिए कॉन्फ़िगर करें.
अगर आपको ऊपर दी गई कॉन्फ़िगरेशन फ़ाइल में accept लाइन में भी बदलाव करना है, तो "1636" को किसी ऐसे पोर्ट से बदला जा सकता है जिसका इस्तेमाल न किया गया हो. आपको क्लाइंट और stunnel के बीच, StartTLS/SSL/TLS को चालू किए बिना, प्लेनटेक्स्ट एलडीएपी का इस्तेमाल करना होगा. ऐसा इसलिए, क्योंकि वे स्थानीय तौर पर कम्यूनिकेट कर रहे हैं.
ध्यान दें: अगर आपको stunnel को किसी दूसरे सर्वर पर चलाना है, तो आपको अपने फ़ायरवॉल कॉन्फ़िगर करने होंगे. ऐसा इसलिए, ताकि सिर्फ़ ज़रूरी ऐप्लिकेशन ही आपके stunnel सर्वर को ऐक्सेस कर सकें. TLS के साथ सुनने के लिए, stunnel को भी कॉन्फ़िगर किया जा सकता है, ताकि आपके ऐप्लिकेशन और stunnel सर्वर के बीच का डेटा एन्क्रिप्ट (सुरक्षित) किया जा सके. इन दोनों कॉन्फ़िगरेशन की जानकारी, आपके एनवायरमेंट पर निर्भर करती है.
अगले चरण
LDAP क्लाइंट को Secure LDAP सेवा से कनेक्ट करने के बाद, आपको LDAP क्लाइंट के लिए सेवा की स्थिति को चालू है पर स्विच करना होगा.
आगे की कार्रवाई के लिए, 5. LDAP क्लाइंट के लिए, टॉगल को चालू करें पर स्विच करें.
ध्यान दें: अगर आपको सेवा से LDAP क्लाइंट कनेक्ट करने में गड़बड़ियां आ रही हैं, तो समस्या हल करने के लिए ldapsearch, ADSI या ldp.exe जैसे सामान्य टूल इस्तेमाल किए जा सकते हैं. निर्देशों के लिए, कनेक्टिविटी की जांच करना और समस्या हल करना लेख पढ़ें.