Computer >> कंप्यूटर >  >> प्रणाली >> Windows Server

सक्रिय निर्देशिका में Kerberos प्रमाणीकरण के लिए एक Keytab फ़ाइल बनाना

कई Linux सेवाएं (apache, nginx, आदि) कीटैब . का उपयोग कर सकती हैं बिना पासवर्ड डाले सक्रिय निर्देशिका में Kerberos प्रमाणीकरण के लिए फ़ाइलें। कीटैब फ़ाइल केर्बेरोस प्रिंसिपल के नाम और संबंधित एन्क्रिप्टेड कुंजी (केर्बरोस पासवर्ड से प्राप्त) रखती है। इस लेख में हम दिखाएंगे कि ktpass का उपयोग करके लिंक किए गए सक्रिय निर्देशिका खाते के SPN के लिए कीटैब फ़ाइल कैसे बनाई जाती है उपकरण।

सबसे अधिक बार, एक अलग सक्रिय निर्देशिका उपयोगकर्ता खाता उस सेवा के लिए बनाया जाता है जिसके लिए कीटैब फ़ाइल का उपयोग करने की आवश्यकता होती है। हालाँकि, आप इसे करने के लिए कंप्यूटर ऑब्जेक्ट का भी उपयोग कर सकते हैं। फिर सेवा का नाम खाते से जुड़ जाता है (ServicePrincipalNameएसपीएन ) SPN का उपयोग Kerberos प्रमाणीकरण द्वारा किसी AD खाते में सेवा उदाहरण को मैप करने के लिए किया जाता है (यही कारण है कि ऐप्स सेवाओं के रूप में प्रमाणित हो सकते हैं, भले ही वे उपयोगकर्ता नाम न जानते हों)।

सबसे पहले, AD में एक सर्विस अकाउंट बनाएं और उसके लिए एक ज्ञात पासवर्ड सेट करें। आप ग्राफिक ADUC कंसोल (dsa.msc) से या PowerShell में New-ADUser cmdlet का उपयोग करके (PowerShell Active Directory मॉड्यूल से) एक खाता बना सकते हैं:

New-ADUser -Name "web" -GivenName "nginx web app" -SamAccountName "web" -UserPrincipalName "web@test.com" -Path "OU=Services,OU=Munich,OU=DE,DC=test,DC=com" –AccountPassword (ConvertTo-SecureString “Sup6r!Pa$s” -AsPlainText -force) -Enabled $true

ग्राफ़िक कंसोल या पावरशेल में सेवा खाते के लिए "उपयोगकर्ता पासवर्ड नहीं बदल सकता" और "पासवर्ड कभी समाप्त नहीं होता" विकल्प सक्षम करें:

Get-ADUser web|Set-ADUser -PasswordNeverExpires:$True -CannotChangePassword:$true

सक्रिय निर्देशिका में Kerberos प्रमाणीकरण के लिए एक Keytab फ़ाइल बनाना

अगले चरण में एक सर्विस प्रिंसिपल नेम (SPN) को यूजर अकाउंट से बाइंड करें। आपको इस चरण को अलग से करने की आवश्यकता नहीं है, क्योंकि ktpass यह स्वचालित रूप से कीटैब फ़ाइल बनाते समय करता है (मैं आपको प्रक्रिया को बेहतर ढंग से समझने के लिए ऐसा करूँगा)।

निम्नलिखित एसपीएन रिकॉर्ड को वेब . से आबद्ध करें खाता:

setspn -A HTTP/www.test.com@test.com web

AD उपयोगकर्ता से जुड़े SPN रिकॉर्ड की सूची प्रदर्शित करें:

setspn -L web

सक्रिय निर्देशिका में Kerberos प्रमाणीकरण के लिए एक Keytab फ़ाइल बनाना

कीटैब फ़ाइल बनाने के लिए, निम्न कमांड का उपयोग किया जाता है:

ktpass -princ HTTP/www.test.com@TEST.COM -mapuser web -crypto ALL -ptype KRB5_NT_PRINCIPAL -pass Sup6r!Pa$s -target mundc01.test.com -out c:\share\web.keytab

सक्रिय निर्देशिका में Kerberos प्रमाणीकरण के लिए एक Keytab फ़ाइल बनाना

Successfully mapped HTTP/www.test.com to web.
Password successfully set!
Key created.
Output keytab to c:\share\webt.keytab:
Keytab version: 0x502
keysize 53 HTTP/www.test.com@test.com ptype 1 (KRB5_NT_PRINCIPAL) vno 4 etype 0x1 (DES-CBC-CRC) keylength 8 (0x73f868856e046449)

कमांड ने HTTP/www@test.com सेवा के SPN रिकॉर्ड के लिए एक कीटैब फ़ाइल (c:\share\webt.keytab) बनाई है। SPN रिकॉर्ड निर्दिष्ट पासवर्ड के साथ वेब खाते से जुड़ा होता है।

सुनिश्चित करें कि सेवा के लिए एसपीएन रिकॉर्ड सफलतापूर्वक बनाया गया है (यदि आपने इसे मैन्युअल रूप से नहीं बनाया है):

setspn -Q */www.test.com@test.com
आप देख सकते हैं कि SPN रिकॉर्ड मिल गया है (मौजूदा SPN मिला! ) यह वेब खाते से जुड़ा है।

सक्रिय निर्देशिका में Kerberos प्रमाणीकरण के लिए एक Keytab फ़ाइल बनाना

कीटैब फ़ाइल की सामग्री को देखने के लिए विंडोज़ में अंतर्निहित उपकरण नहीं हैं। लेकिन अगर आपके कंप्यूटर पर जावा जेआरई स्थापित है, तो आप klist.exe . का उपयोग कर सकते हैं जावा वितरण पैकेज में शामिल है।

cd "c:\Program Files\Java\jre1.8.0_181\bin"
klist.exe -K -e -t -k c:\PS\web_host.keytab

Key tab: c:\PS\web_host.keytab, 5 entries found.

सक्रिय निर्देशिका में Kerberos प्रमाणीकरण के लिए एक Keytab फ़ाइल बनाना

आइए कीटैब फ़ाइल की सामग्री देखें। एसपीएन, कुंजी, टाइमस्टैम्प, एक एन्क्रिप्शन एल्गोरिदम और एक कुंजी संस्करण (केवीएनओ - कुंजी संस्करण संख्या) यहां निर्दिष्ट हैं।

कीटैब फ़ाइल बनाते समय, ktpass msDS-KeyVersionNumber को बढ़ा देता है उपयोगकर्ता खाते का विशेषता मान (आप इसे AD विशेषता संपादक में देख सकते हैं) और कीटैब तालिका में मान को KVNO के रूप में उपयोग करता है।

सक्रिय निर्देशिका में Kerberos प्रमाणीकरण के लिए एक Keytab फ़ाइल बनाना

यदि आप खाता पासवर्ड बदलते हैं, तो विशेषता मान एक से बढ़ जाता है, और पिछले केवीएनओ के साथ सभी कीटैब प्रविष्टियां अमान्य हो जाती हैं (भले ही नया पासवर्ड पुराने से पूरी तरह मेल खाता हो)। अगर एडी में यूजर पासवर्ड बदलता है, तो आपको फिर से कीटैब फाइल जेनरेट करनी होगी।

एक कीटैब फ़ाइल विभिन्न एसपीएन की कुंजी रख सकती है। ktpass . का उपयोग करके कीटैब फ़ाइल में अतिरिक्त SPN और कुंजियाँ जोड़ी जाती हैं पैरामीटर (-in ,-setupn ,-setpass )।

आपके द्वारा प्राप्त की गई कीटैब फ़ाइल का आगे उपयोग उस सेवा पर निर्भर करता है जिस पर इसे लागू किया गया है। उदाहरण के लिए, यहां आप ज़ैबिक्स में एक पारदर्शी एसएसओ उपयोगकर्ता प्रमाणीकरण के लिए कीटैब फ़ाइल का उपयोग करना सीख सकते हैं। साथ ही, अपनी कीटैब फ़ाइलों को सुरक्षित रखने के बारे में न भूलें (कोई भी जो कीटैब फ़ाइल की सामग्री को पढ़ने में सक्षम है, वह इसकी किसी भी कुंजी का उपयोग करने में सक्षम होगा)।


  1. IIS वेबसाइट पर Kerberos प्रमाणीकरण को कॉन्फ़िगर करना

    Windows Server 2012 R2 चलाने वाली IIS वेबसाइट पर पारदर्शी SSO (एकल साइन-ऑन) Kerberos डोमेन उपयोगकर्ता प्रमाणीकरण को कॉन्फ़िगर करने के तरीके के बारे में चरण-दर-चरण मार्गदर्शिका यहां दी गई है। अपने वेब सर्वर पर IIS प्रबंधक प्रारंभ करें, आवश्यक वेबसाइट का चयन करें और प्रमाणीकरण . पर जाएं अनुभाग। जैसा

  1. ज़ब्बिक्स:सक्रिय निर्देशिका में एकल साइन-ऑन (एसएसओ) प्रमाणीकरण

    इस लेख में हम केर्बेरोज का उपयोग करके सक्रिय निर्देशिका में ज़ैबिक्स 4.0 (या नए) के लिए एक पारदर्शी एसएसओ (एकल साइन-ऑन) प्रमाणीकरण के चरण-दर-चरण कॉन्फ़िगरेशन पर विचार करेंगे। अंतिम परिणाम यह है कि उपयोगकर्ता क्रेडेंशियल दर्ज किए बिना ज़ैबिक्स फ्रंटपेज पर स्वचालित रूप से प्रमाणित हो जाता है। ऐसा

  1. फिक्स:डोमेन के लिए एक सक्रिय निर्देशिका डोमेन नियंत्रक से संपर्क नहीं किया जा सका

    त्रुटि डोमेन के लिए एक सक्रिय निर्देशिका डोमेन नियंत्रक से संपर्क नहीं किया जा सका अक्सर आपके DNS गलत कॉन्फ़िगरेशन के कारण होता है जिस स्थिति में आपको इसे बदलना होगा। उपयोगकर्ताओं ने रिपोर्ट किया है कि जब वे किसी अन्य Windows वर्कस्टेशन को किसी डोमेन में जोड़ने का प्रयास करते हैं, तो उन्हें निम्न त