1.8. टीएलएस
ओपनएलडीएपी सर्वर पर प्रमाणीकरण करते समय एन्क्रिप्टेड सत्र का उपयोग करके ऐसा करना सबसे अच्छा होता है। इसे ट्रांसपोर्ट लेयर सिक्योरिटी (टीएलएस) का उपयोग करके पूरा किया जा सकता है।
यहां तो हम अपने ही होंगे प्रमाणपत्र प्राधिकार और फिर उस सीए के रूप में हमारा एलडीएपी सर्वर प्रमाणपत्र बनाएं और उस पर हस्ताक्षर करें। चूँकि स्लैपड को gnutls लाइब्रेरी का उपयोग करके संकलित किया गया है, हम इन कार्यों को पूरा करने के लिए certtool उपयोगिता का उपयोग करेंगे।
1. gnutls-bin और ssl-cert पैकेज स्थापित करें:
sudo apt इंस्टॉल gnutls-bin ssl-cert
2. प्रमाणपत्र प्राधिकरण के लिए एक निजी कुंजी बनाएं:
sudo sh -c "certtool --generate-privkey > /etc/ssl/private/cakey.pem"
3. टेम्प्लेट/फ़ाइल बनाएं /etc/ssl/ca.info सीए को परिभाषित करने के लिए:
सीएन = उदाहरण कंपनी सीए
प्रमाणपत्र_हस्ताक्षर_कुंजी
4. स्व-हस्ताक्षरित सीए प्रमाणपत्र बनाएं:
sudo certtool --जेनरेट-स्व-हस्ताक्षरित \
--लोड-प्राइवकी /etc/ssl/private/cakey.pem \
--टेम्पलेट /etc/ssl/ca.info \
--आउटफ़ाइल /etc/ssl/certs/cacert.pem
5. सर्वर के लिए एक निजी कुंजी बनाएं:
4 http://manpages.ubuntu.com/manpages/en/man5/slapd.access.5.html
सुडो सर्टिफिकेट --जेनरेट-प्राइवकी \
--बिट्स 1024 \
--आउटफ़ाइल /etc/ssl/private/ldap01_slapd_key.pem
बदलें ldap01 आपके सर्वर के होस्टनाम के साथ फ़ाइल नाम में। होस्ट और सेवा के लिए प्रमाणपत्र और कुंजी का नामकरण जो उनका उपयोग करेगा, चीजों को स्पष्ट रखने में मदद करेगा।
6. बनाएं /etc/ssl/ldap01.info जानकारी फ़ाइल जिसमें शामिल है:
संगठन = उदाहरण कंपनी cn = ldap01.example.com tls_www_server
एन्क्रिप्शन_कुंजी हस्ताक्षर_कुंजी समाप्ति_दिन = 3650
उपरोक्त प्रमाणपत्र 10 वर्षों के लिए मान्य है। तदनुसार समायोजित करें.
7. सर्वर का प्रमाणपत्र बनाएं:
सुडो सर्टूल --जेनरेट-सर्टिफिकेट \
--लोड-प्राइवकी /etc/ssl/private/ldap01_slapd_key.pem \
--load-ca-प्रमाणपत्र /etc/ssl/certs/cacert.pem \
--load-ca-privkey /etc/ssl/private/cakey.pem \
--टेम्पलेट /etc/ssl/ldap01.info \
--आउटफ़ाइल /etc/ssl/certs/ldap01_slapd_cert.pem
8. अनुमतियाँ और स्वामित्व समायोजित करें:
sudo chgrp openldap /etc/ssl/private/ldap01_slapd_key.pem sudo chmod 0640 /etc/ssl/private/ldap01_slapd_key.pem sudo gpasswd -a openldap ssl-cert
9. अब स्लैपड को पुनः आरंभ करें, क्योंकि हमने 'ओपनल्डैप' उपयोगकर्ता को 'एसएसएल-सर्टिफिकेट' समूह में जोड़ा है:
sudo systemctl पुनरारंभ slapd.service
आपका सर्वर अब नए टीएलएस कॉन्फ़िगरेशन को स्वीकार करने के लिए तैयार है।
फ़ाइल बनाएँ certinfo.ldif निम्नलिखित सामग्री के साथ (तदनुसार समायोजित करें, हमारा उदाहरण मानता है कि हमने https://www.cacert.org का उपयोग करके प्रमाणपत्र बनाए हैं):
डीएन: सीएन = कॉन्फिग
जोड़ें: olcTLSCACertificateFile olcTLSCACertificateFile: /etc/ssl/certs/cacert.pem
-
जोड़ें: olcTLSCसर्टिफिकेटफाइल
olcTLSCसर्टिफिकेटफाइल: /etc/ssl/certs/ldap01_slapd_cert.pem
-
जोड़ें: olcTLSCसर्टिफिकेटकीफाइल
olcTLSCसर्टिफिकेटकीफाइल: /etc/ssl/private/ldap01_slapd_key.pem
Slapd-config डेटाबेस के माध्यम से हमारे TLS कार्य के बारे में Slapd को बताने के लिए ldapmodify कमांड का उपयोग करें:
sudo ldapmodify -Y बाहरी -H ldapi:/// -f certinfo.ldif
आम धारणा के विपरीत, आपको इसकी आवश्यकता नहीं है एलडीएपीएस:// in / etc / डिफ़ॉल्ट / थप्पड़ एन्क्रिप्शन का उपयोग करने के लिए. आपके पास बस यह होना चाहिए:
SLAPD_SERVICES='ldap:/// ldapi:///'
टीएलएस/एसएसएल (एलडीएपीएस: //) पर एलडीएपी को इसके पक्ष में खारिज कर दिया गया है स्टार्ट टीएलएस. उत्तरार्द्ध एक मौजूदा एलडीएपी सत्र (टीसीपी पोर्ट 389 पर सुनना) को टीएलएस/एसएसएल द्वारा संरक्षित होने को संदर्भित करता है जबकि एलडीएपीएस, एचटीटीपीएस की तरह, एक विशिष्ट एन्क्रिप्टेड-फ्रॉम-द-स्टार्ट प्रोटोकॉल है जो टीसीपी पोर्ट 636 पर संचालित होता है।