केर्बरोस (प्रोटोकॉल): Difference between revisions
No edit summary |
No edit summary |
||
Line 25: | Line 25: | ||
| website = {{URL|https://web.mit.edu/kerberos/}} | | website = {{URL|https://web.mit.edu/kerberos/}} | ||
}} | }} | ||
'''केर्बरोस''' [[ संगणक संजाल |कंप्यूटर-नेटवर्क]] [[प्रमाणीकरण]] [[क्रिप्टोग्राफ़िक प्रोटोकॉल]] है जो अन्य-सुरक्षित नेटवर्क पर संचार करने वाले [[नोड (नेटवर्किंग)]] को एक-दूसरे को सुरक्षित प्रविधि से स्वयं की पहचान प्रमाणित करने की अनुमति देने के लिए टिकटों के आधार पर कार्य करता है। इसके डिजाइनरों ने इसे मुख्य रूप से | '''केर्बरोस''' [[ संगणक संजाल |कंप्यूटर-नेटवर्क]] [[प्रमाणीकरण]] [[क्रिप्टोग्राफ़िक प्रोटोकॉल]] है जो अन्य-सुरक्षित नेटवर्क पर संचार करने वाले [[नोड (नेटवर्किंग)]] को एक-दूसरे को सुरक्षित प्रविधि से स्वयं की पहचान प्रमाणित करने की अनुमति देने के लिए टिकटों के आधार पर कार्य करता है। इसके डिजाइनरों ने इसे मुख्य रूप से उपयोगकर्ता-सर्वर मॉडल पर लक्षित किया है, एवं यह [[पारस्परिक प्रमाणीकरण]] प्रदान करता है, उपयोगकर्ता एवं सर्वर दोनों एक-दूसरे की पहचान को सत्यापित करते हैं। केर्बरोस प्रोटोकॉल संदेश गोपनीय होके बातें सुनने एवं रिप्ले प्रहार से सुरक्षित रहते हैं। | ||
केर्बरोस [[सममित-कुंजी क्रिप्टोग्राफी]] पर बनाता है एवं इसके लिए [[विश्वसनीय तृतीय पक्ष]] की आवश्यकता होती है, एवं वैकल्पिक रूप से प्रमाणीकरण के कुछ चरणों के समय [[सार्वजनिक-कुंजी क्रिप्टोग्राफी]] का उपयोग कर सकता है।<ref name="rfc4556">RFC 4556, abstract.</ref> केर्बरोस डिफ़ॉल्ट रूप से यूडीपी पोर्ट 88 का उपयोग करता है। | केर्बरोस [[सममित-कुंजी क्रिप्टोग्राफी]] पर बनाता है एवं इसके लिए [[विश्वसनीय तृतीय पक्ष]] की आवश्यकता होती है, एवं वैकल्पिक रूप से प्रमाणीकरण के कुछ चरणों के समय [[सार्वजनिक-कुंजी क्रिप्टोग्राफी]] का उपयोग कर सकता है।<ref name="rfc4556">RFC 4556, abstract.</ref> केर्बरोस डिफ़ॉल्ट रूप से यूडीपी पोर्ट 88 का उपयोग करता है। | ||
Line 49: | Line 49: | ||
===विवरण=== | ===विवरण=== | ||
उपयोगकर्ता स्वयं को प्रमाणीकरण सर्वर (एएस) से प्रमाणित करता है जो उपयोगकर्ता नाम को [[कुंजी वितरण केंद्र]] (केडीसी) को अग्रेषित करता है। केडीसी टिकट-अनुदान टिकट (टीजीटी) प्रस्तावित करता है, जिस पर समय अंकित होता है एवं टिकट-अनुदान सेवा (टीजीएस) की गुप्त कुंजी का उपयोग करके इसे एन्क्रिप्ट करता है एवं एन्क्रिप्टेड परिणाम को उपयोगकर्ता के कार्य केंद्र पर लौटाता है। यह कभी-कभी ही किया जाता है, सामान्यतः उपयोगकर्ता लॉगऑन पर; टीजीटी किसी बिंदु पर समाप्त हो जाती है, चूंकि इसे उपयोगकर्ता के सत्र प्रबंधक द्वारा लॉग इन करते समय पारदर्शी रूप से नवीनीकृत किया जा सकता है। | |||
जब ग्राहक को किसी अन्य नोड (केर्बरोस भाषा में | जब ग्राहक को किसी अन्य नोड (केर्बरोस भाषा में प्रिंसिपल) पर सेवा के साथ संचार करने की आवश्यकता होती है, तो ग्राहक टीजीटी को टीजीएस को भेजता है, जो सामान्यतः केडीसी के समान होस्ट साझा करता है। सेवा पूर्व से ही टीजीएस के साथ सर्विस प्रिंसिपल नेम (एसपीएन) के साथ पंजीकृत होनी चाहिए। उपयोगकर्ता इस सेवा तक पहुंच का अनुरोध करने के लिए एसपीएन का उपयोग करता है। यह सत्यापित करने के पश्चात कि टीजीटी वैध है एवं उपयोगकर्ता को अनुरोधित सेवा तक पहुंचने की अनुमति है, टीजीएस ग्राहक को टिकट एवं सत्र कुंजी प्रस्तावित करता है। इसके पश्चात उपयोगकर्ता अपने सेवा अनुरोध के साथ टिकट को सर्विस सर्वर (एसएस) को भेजता है। | ||
[[File:Kerberos protocol.svg|thumb|680x680px|केर्बरोस वार्ता]]प्रोटोकॉल का नीचे विस्तार से वर्णन किया गया है। | [[File:Kerberos protocol.svg|thumb|680x680px|केर्बरोस वार्ता]]प्रोटोकॉल का नीचे विस्तार से वर्णन किया गया है। | ||
'''केर्बरोस के बिना उपयोगकर्ता | '''केर्बरोस के बिना उपयोगकर्ता उपयोगकर्ता-आधारित लॉगिन''' | ||
# एक उपयोगकर्ता [[क्लाइंट (कंप्यूटिंग)]] | | # एक उपयोगकर्ता [[क्लाइंट (कंप्यूटिंग)|उपयोगकर्ता (कंप्यूटिंग)]] | उपयोगकर्ता मशीन पर एक उपयोगकर्ता नाम एवं पासवर्ड दर्ज करता है। अन्य क्रेडेंशियल तंत्र जैसे pkinit ([rfc:4556 आरएफसी 4556]) पासवर्ड के स्थान पर सार्वजनिक कुंजी के उपयोग की अनुमति देते हैं। उपयोगकर्ता पासवर्ड को एक सममित सिफर की कुंजी में बदल देता है। यह या तो अंतर्निहित [[कुंजी शेड्यूलिंग]] का उपयोग करता है, या एक-तरफ़ा हैश का उपयोग करता है, जो उपयोग किए गए [[ सिफर सुइट ]] | सिफर-सूट पर निर्भर करता है। | ||
#सर्वर उपयोगकर्ता नाम एवं सममित सिफर प्राप्त करता है एवं डेटाबेस से डेटा के साथ इसकी तुलना करता है। यदि सिफर उपयोगकर्ता के लिए संग्रहीत सिफर से मेल खाता है तो लॉगिन सफल था। | #सर्वर उपयोगकर्ता नाम एवं सममित सिफर प्राप्त करता है एवं डेटाबेस से डेटा के साथ इसकी तुलना करता है। यदि सिफर उपयोगकर्ता के लिए संग्रहीत सिफर से मेल खाता है तो लॉगिन सफल था। | ||
====ग्राहक प्रमाणीकरण==== | ====ग्राहक प्रमाणीकरण==== | ||
# | # उपयोगकर्ता उपयोगकर्ता की ओर से सेवाओं का अनुरोध करते हुए एएस (प्रमाणीकरण सर्वर) को उपयोगकर्ता आईडी का एक [[स्पष्ट पाठ]] संदेश भेजता है। (नोट: एएस को न तो गुप्त कुंजी एवं न ही पासवर्ड भेजा जाता है।) | ||
# AS यह देखने के लिए जांच करता है कि | # AS यह देखने के लिए जांच करता है कि उपयोगकर्ता उसके डेटाबेस में है या नहीं। यदि ऐसा है, तो एएस डेटाबेस में पाए गए उपयोगकर्ता के पासवर्ड को हैश करके गुप्त कुंजी उत्पन्न करता है (उदाहरण के लिए, विंडोज सर्वर में [[सक्रिय निर्देशिका]]) एवं उपयोगकर्ता को निम्नलिखित दो संदेश वापस भेजता है: | ||
#* संदेश ए: | #* संदेश ए: उपयोगकर्ता/टीजीएस सत्र कुंजी उपयोगकर्ता/उपयोगकर्ता की गुप्त कुंजी का उपयोग करके एन्क्रिप्ट किया गया। | ||
#* संदेश बी: टिकट-अनुदान-टिकट (टीजीटी, जिसमें | #* संदेश बी: टिकट-अनुदान-टिकट (टीजीटी, जिसमें उपयोगकर्ता आईडी, उपयोगकर्ता [[नेटवर्क पता]], टिकट वैधता अवधि एवं उपयोगकर्ता/टीजीएस सत्र कुंजी सम्मिलित है) टीजीएस की गुप्त कुंजी का उपयोग करके एन्क्रिप्ट किया गया है। | ||
# एक बार जब | # एक बार जब उपयोगकर्ता को संदेश ए एवं बी प्राप्त हो जाता है, तो वह उपयोगकर्ता द्वारा दर्ज किए गए पासवर्ड से उत्पन्न गुप्त कुंजी के साथ संदेश ए को डिक्रिप्ट करने का प्रयास करता है। यदि उपयोगकर्ता द्वारा दर्ज किया गया पासवर्ड एएस डेटाबेस में पासवर्ड से मेल नहीं खाता है, तो उपयोगकर्ता की गुप्त कुंजी अलग होगी एवं इस प्रकार संदेश ए को डिक्रिप्ट करने में असमर्थ होगी। वैध पासवर्ड एवं गुप्त कुंजी के साथ उपयोगकर्ता उपयोगकर्ता/टीजीएस सत्र कुंजी प्राप्त करने के लिए संदेश ए को डिक्रिप्ट करता है। . इस सत्र कुंजी का उपयोग टीजीएस के साथ आगे संचार के लिए किया जाता है। (नोट: उपयोगकर्ता संदेश बी को डिक्रिप्ट नहीं कर सकता, क्योंकि यह टीजीएस की गुप्त कुंजी का उपयोग करके एन्क्रिप्ट किया गया है।) इस बिंदु पर, उपयोगकर्ता के पास टीजीएस को खुद को प्रमाणित करने के लिए पर्याप्त जानकारी है। | ||
====ग्राहक सेवा प्राधिकरण==== | ====ग्राहक सेवा प्राधिकरण==== | ||
# सेवाओं का अनुरोध करते समय, ग्राहक टीजीएस को निम्नलिखित संदेश भेजता है: | # सेवाओं का अनुरोध करते समय, ग्राहक टीजीएस को निम्नलिखित संदेश भेजता है: | ||
#* संदेश सी: संदेश बी (टीजीएस गुप्त कुंजी का उपयोग करके एन्क्रिप्टेड टीजीटी) एवं अनुरोधित सेवा की आईडी से बना है। | #* संदेश सी: संदेश बी (टीजीएस गुप्त कुंजी का उपयोग करके एन्क्रिप्टेड टीजीटी) एवं अनुरोधित सेवा की आईडी से बना है। | ||
#* संदेश डी: प्रमाणक (जो | #* संदेश डी: प्रमाणक (जो उपयोगकर्ता आईडी एवं टाइमस्टैम्प से बना है), उपयोगकर्ता/टीजीएस सत्र कुंजी (संदेश ए में उपयोगकर्ता द्वारा पाया गया) का उपयोग करके एन्क्रिप्ट किया गया है। | ||
# संदेश सी एवं डी प्राप्त करने पर, टीजीएस संदेश सी से संदेश बी को पुनः प्राप्त करता है। यह टीजीएस गुप्त कुंजी का उपयोग करके संदेश बी को डिक्रिप्ट करता है। यह इसे | # संदेश सी एवं डी प्राप्त करने पर, टीजीएस संदेश सी से संदेश बी को पुनः प्राप्त करता है। यह टीजीएस गुप्त कुंजी का उपयोग करके संदेश बी को डिक्रिप्ट करता है। यह इसे उपयोगकर्ता/टीजीएस सत्र कुंजी एवं उपयोगकर्ता आईडी (दोनों टीजीटी में हैं) देता है। इस उपयोगकर्ता/टीजीएस सत्र कुंजी का उपयोग करके, टीजीएस संदेश डी (प्रमाणक) को डिक्रिप्ट करता है एवं संदेश बी एवं डी से उपयोगकर्ता आईडी की तुलना करता है; यदि वे मेल खाते हैं, तो सर्वर उपयोगकर्ता को निम्नलिखित दो संदेश भेजता है: | ||
#* संदेश ई: | #* संदेश ई: उपयोगकर्ता-टू-सर्वर टिकट (जिसमें उपयोगकर्ता आईडी, उपयोगकर्ता नेटवर्क पता, वैधता अवधि एवं उपयोगकर्ता/सर्वर सत्र कुंजी सम्मिलित है) सेवा की गुप्त कुंजी का उपयोग करके एन्क्रिप्ट किया गया है। | ||
#* संदेश एफ: | #* संदेश एफ: उपयोगकर्ता/सर्वर सत्र कुंजी उपयोगकर्ता/टीजीएस सत्र कुंजी के साथ एन्क्रिप्टेड है। | ||
====ग्राहक सेवा अनुरोध==== | ====ग्राहक सेवा अनुरोध==== | ||
# टीजीएस से ई एवं एफ संदेश प्राप्त करने पर, ग्राहक के पास सेवा सर्वर (एसएस) पर खुद को प्रमाणित करने के लिए पर्याप्त जानकारी होती है। | # टीजीएस से ई एवं एफ संदेश प्राप्त करने पर, ग्राहक के पास सेवा सर्वर (एसएस) पर खुद को प्रमाणित करने के लिए पर्याप्त जानकारी होती है। उपयोगकर्ता एसएस से जुड़ता है एवं निम्नलिखित दो संदेश भेजता है: | ||
#* संदेश ई: पिछले चरण से ( | #* संदेश ई: पिछले चरण से (उपयोगकर्ता-टू-सर्वर टिकट, टीजीएस द्वारा सेवा की गुप्त कुंजी का उपयोग करके एन्क्रिप्ट किया गया)। | ||
#* संदेश जी: एक नया प्रमाणक, जिसमें | #* संदेश जी: एक नया प्रमाणक, जिसमें उपयोगकर्ता आईडी, टाइमस्टैम्प सम्मिलित है एवं उपयोगकर्ता/सर्वर सत्र कुंजी का उपयोग करके एन्क्रिप्ट किया गया है। | ||
# एसएस | # एसएस उपयोगकर्ता/सर्वर सत्र कुंजी को पुनः प्राप्त करने के लिए अपनी गुप्त कुंजी का उपयोग करके टिकट (संदेश ई) को डिक्रिप्ट करता है। सत्र कुंजी का उपयोग करते हुए, एसएस प्रमाणक को डिक्रिप्ट करता है एवं संदेश ई एवं जी से उपयोगकर्ता आईडी की तुलना करता है, यदि वे मेल खाते हैं तो सर्वर उपयोगकर्ता को उसकी वास्तविक पहचान एवं ग्राहक की सेवा करने की इच्छा की पुष्टि करने के लिए निम्नलिखित संदेश भेजता है: | ||
#* संदेश एच: | #* संदेश एच: उपयोगकर्ता के प्रमाणक में पाया गया टाइमस्टैम्प (संस्करण 4 में प्लस 1, लेकिन संस्करण 5 में आवश्यक नहीं है)<ref>{{cite journal|url=https://tools.ietf.org/html/rfc1510#section-3.2.4|title=The Kerberos Network Authentication Service (V5)|first1=Neuman|last1=C.|first2=Kohl|last2=J.|year=1993 |doi=10.17487/RFC1510 |url-status=live|archive-url=https://web.archive.org/web/20160821221402/https://tools.ietf.org/html/rfc1510#section-3.2.4|archive-date=2016-08-21|doi-access=free}}</ref><ref>{{cite journal|url=https://tools.ietf.org/html/rfc4120#section-3.2.4|title=The Kerberos Network Authentication Service (V5)|first1=Neuman|last1=Clifford|first2=Hartman|last2=Sam|first3=Yu|last3=Tom|first4=Raeburn|last4=Kenneth|year=2005 |doi=10.17487/RFC4120 |url-status=live|archive-url=https://web.archive.org/web/20160821232023/https://tools.ietf.org/html/rfc4120#section-3.2.4|archive-date=2016-08-21}}</ref>), उपयोगकर्ता/सर्वर सत्र कुंजी का उपयोग करके एन्क्रिप्ट किया गया। | ||
# | # उपयोगकर्ता उपयोगकर्ता/सर्वर सत्र कुंजी का उपयोग करके पुष्टिकरण (संदेश एच) को डिक्रिप्ट करता है एवं जांचता है कि टाइमस्टैम्प सही है या नहीं। यदि ऐसा है, तो उपयोगकर्ता सर्वर पर भरोसा कर सकता है एवं सर्वर को सेवा अनुरोध प्रस्तावित करना शुरू कर सकता है। | ||
# सर्वर | # सर्वर उपयोगकर्ता को अनुरोधित सेवाएँ प्रदान करता है। | ||
==ऑपरेटिंग सिस्टम द्वारा समर्थन== | ==ऑपरेटिंग सिस्टम द्वारा समर्थन== | ||
===माइक्रोसॉफ्ट विंडोज़=== | ===माइक्रोसॉफ्ट विंडोज़=== | ||
[[Windows 2000]] एवं | [[Windows 2000]] एवं पश्चात के संस्करण अपनी डिफ़ॉल्ट प्रमाणीकरण विधि के रूप में केर्बरोस का उपयोग करते हैं।<ref name="MSTN-Kerberos-Auth">{{cite web|url=https://technet.microsoft.com/pt-br/library/cc780469(v=ws.10).aspx|title=What Is Kerberos Authentication?|publisher=Microsoft TechNet|url-status=live|archive-url=https://web.archive.org/web/20161220084434/https://technet.microsoft.com/pt-br/library/cc780469(v=ws.10).aspx|archive-date=2016-12-20}}</ref> केर्बरोस प्रोटोकॉल सुइट में कुछ Microsoft परिवर्धन [rfc:3244 आरएफसी 3244] Microsoft Windows 2000 केर्बरोस बदलें पासवर्ड एवं पासवर्ड सेट प्रोटोकॉल में प्रलेखित हैं। [rfc:4757 आरएफसी 4757] Microsoft द्वारा [[RC4]] सिफर के उपयोग का दस्तावेजीकरण करता है। जबकि Microsoft केर्बरोस प्रोटोकॉल का उपयोग एवं विस्तार करता है, यह MIT सॉफ़्टवेयर का उपयोग नहीं करता है। | ||
केर्बरोस को पसंदीदा प्रमाणीकरण विधि के रूप में उपयोग किया जाता है: सामान्य तौर पर, किसी | केर्बरोस को पसंदीदा प्रमाणीकरण विधि के रूप में उपयोग किया जाता है: सामान्य तौर पर, किसी उपयोगकर्ता को Windows डोमेन से जोड़ने का अर्थ है उस उपयोगकर्ता से Windows डोमेन में सेवाओं एवं उस डोमेन के साथ विश्वास संबंधों वाले सभी डोमेन के प्रमाणीकरण के लिए डिफ़ॉल्ट प्रोटोकॉल के रूप में केर्बरोस को सक्षम करना।<ref name="MSTN-Kerberos-Auth"/> | ||
इसके विपरीत, जब | इसके विपरीत, जब उपयोगकर्ता या सर्वर या दोनों एक डोमेन से जुड़े नहीं होते हैं (या एक ही विश्वसनीय डोमेन वातावरण का हिस्सा नहीं होते हैं), तो विंडोज़ उपयोगकर्ता एवं सर्वर के बीच प्रमाणीकरण के लिए [[एनटीएलएम]] का उपयोग करेगा।<ref name="MSTN-Kerberos-Auth"/> | ||
इंटरनेट वेब एप्लिकेशन [[एसएसपीआई]] के अनुसार प्रदान किए गए एपीआई का उपयोग करके डोमेन से जुड़े ग्राहकों के लिए प्रमाणीकरण विधि के रूप में केर्बरोस को प्रस्तावित कर सकते हैं। | इंटरनेट वेब एप्लिकेशन [[एसएसपीआई]] के अनुसार प्रदान किए गए एपीआई का उपयोग करके डोमेन से जुड़े ग्राहकों के लिए प्रमाणीकरण विधि के रूप में केर्बरोस को प्रस्तावित कर सकते हैं। | ||
Line 96: | Line 96: | ||
'''यूनिक्स एवं अन्य ऑपरेटिंग सिस्टम''' | '''यूनिक्स एवं अन्य ऑपरेटिंग सिस्टम''' | ||
फ्रीबीएसडी, [[ओपनबीएसडी]], एप्पल के मैकओएस, [[रेड हैट एंटरप्राइज लिनक्स]], [[सन माइक्रोसिस्टम्स]] के [[सोलारिस (ऑपरेटिंग सिस्टम)]], आईबीएम के एईक्स, [[एचपी-यूएक्स]] एवं अन्य सहित कई यूनिक्स जैसे ऑपरेटिंग सिस्टम में उपयोगकर्ताओं या सेवाओं के केर्बरोस प्रमाणीकरण के लिए सॉफ्टवेयर सम्मिलित हैं। विभिन्न गैर-यूनिक्स जैसे ऑपरेटिंग सिस्टम जैसे z/OS, [[IBM i]] एवं [[OpenVMS]] में भी केर्बरोस समर्थन की सुविधा है। एम्बेडेड प्लेटफ़ॉर्म पर चलने वाले | फ्रीबीएसडी, [[ओपनबीएसडी]], एप्पल के मैकओएस, [[रेड हैट एंटरप्राइज लिनक्स]], [[सन माइक्रोसिस्टम्स]] के [[सोलारिस (ऑपरेटिंग सिस्टम)]], आईबीएम के एईक्स, [[एचपी-यूएक्स]] एवं अन्य सहित कई यूनिक्स जैसे ऑपरेटिंग सिस्टम में उपयोगकर्ताओं या सेवाओं के केर्बरोस प्रमाणीकरण के लिए सॉफ्टवेयर सम्मिलित हैं। विभिन्न गैर-यूनिक्स जैसे ऑपरेटिंग सिस्टम जैसे z/OS, [[IBM i]] एवं [[OpenVMS]] में भी केर्बरोस समर्थन की सुविधा है। एम्बेडेड प्लेटफ़ॉर्म पर चलने वाले उपयोगकर्ता एजेंटों एवं नेटवर्क सेवाओं के लिए केर्बरोस वी प्रमाणीकरण प्रोटोकॉल का एंबेडेड कार्यान्वयन भी कंपनियों से उपलब्ध है। | ||
==कमियाँ एवं सीमाएँ== | ==कमियाँ एवं सीमाएँ== | ||
* केर्बरोस में समय की सख्त आवश्यकताएं हैं, जिसका अर्थ है कि सम्मिलित मेजबानों की घड़ियों को कॉन्फ़िगर की गई सीमाओं के भीतर सिंक्रनाइज़ किया जाना चाहिए। टिकटों की एक समय उपलब्धता अवधि होती है, एवं यदि होस्ट घड़ी केर्बरोस सर्वर घड़ी के साथ सिंक्रनाइज़ नहीं है, तो प्रमाणीकरण विफल हो जाएगा। डिफ़ॉल्ट कॉन्फ़िगरेशन [http://web.mit.edu/Kerberos/krb5-1.5/krb5-1.5.4/doc/krb5-admin/Clock-Skew.html प्रति MIT] के लिए आवश्यक है कि घड़ी का समय पाँच मिनट से अधिक न हो अलग। व्यवहार में, [[नेटवर्क टाइम प्रोटोकॉल]] डेमॉन का उपयोग | * केर्बरोस में समय की सख्त आवश्यकताएं हैं, जिसका अर्थ है कि सम्मिलित मेजबानों की घड़ियों को कॉन्फ़िगर की गई सीमाओं के भीतर सिंक्रनाइज़ किया जाना चाहिए। टिकटों की एक समय उपलब्धता अवधि होती है, एवं यदि होस्ट घड़ी केर्बरोस सर्वर घड़ी के साथ सिंक्रनाइज़ नहीं है, तो प्रमाणीकरण विफल हो जाएगा। डिफ़ॉल्ट कॉन्फ़िगरेशन [http://web.mit.edu/Kerberos/krb5-1.5/krb5-1.5.4/doc/krb5-admin/Clock-Skew.html प्रति MIT] के लिए आवश्यक है कि घड़ी का समय पाँच मिनट से अधिक न हो अलग। व्यवहार में, [[नेटवर्क टाइम प्रोटोकॉल]] डेमॉन का उपयोग सामान्यतः होस्ट घड़ियों को सिंक्रनाइज़ रखने के लिए किया जाता है। ध्यान दें कि कुछ सर्वर (Microsoft का कार्यान्वयन उनमें से एक है) एन्क्रिप्टेड सर्वर समय वाला KRB_AP_ERR_SKEW परिणाम लौटा सकता है यदि दोनों घड़ियों में कॉन्फ़िगर किए गए अधिकतम मान से अधिक ऑफसेट है। उस स्थिति में, उपयोगकर्ता ऑफसेट खोजने के लिए दिए गए सर्वर समय का उपयोग करके समय की गणना करके पुनः प्रयास कर सकता है। यह व्यवहार [https://datatracker.ietf.org/doc/html/rfc4430 आरएफसी 4430] में प्रलेखित है। | ||
* प्रशासन प्रोटोकॉल मानकीकृत नहीं है एवं सर्वर कार्यान्वयन के बीच भिन्न है। पासवर्ड परिवर्तन [rfc:3244 आरएफसी 3244] में वर्णित हैं। | * प्रशासन प्रोटोकॉल मानकीकृत नहीं है एवं सर्वर कार्यान्वयन के बीच भिन्न है। पासवर्ड परिवर्तन [rfc:3244 आरएफसी 3244] में वर्णित हैं। | ||
* सममित क्रिप्टोग्राफी अपनाने के मामले में (केर्बरोस सममित या असममित (सार्वजनिक-कुंजी) क्रिप्टोग्राफी का उपयोग करके कार्य कर सकता है), क्योंकि सभी प्रमाणीकरण एक केंद्रीकृत कुंजी वितरण केंद्र (केडीसी) द्वारा नियंत्रित होते हैं, इस प्रमाणीकरण बुनियादी ढांचे से समझौता करने से हमलावर को किसी का भी प्रतिरूपण करने की अनुमति मिल जाएगी उपयोगकर्ता. | * सममित क्रिप्टोग्राफी अपनाने के मामले में (केर्बरोस सममित या असममित (सार्वजनिक-कुंजी) क्रिप्टोग्राफी का उपयोग करके कार्य कर सकता है), क्योंकि सभी प्रमाणीकरण एक केंद्रीकृत कुंजी वितरण केंद्र (केडीसी) द्वारा नियंत्रित होते हैं, इस प्रमाणीकरण बुनियादी ढांचे से समझौता करने से हमलावर को किसी का भी प्रतिरूपण करने की अनुमति मिल जाएगी उपयोगकर्ता. | ||
* प्रत्येक नेटवर्क सेवा जिसे एक अलग होस्ट नाम की आवश्यकता होती है, उसे केर्बरोस कुंजियों के अपने सेट की आवश्यकता होगी। यह वर्चुअल होस्टिंग एवं क्लस्टर को जटिल बनाता है। | * प्रत्येक नेटवर्क सेवा जिसे एक अलग होस्ट नाम की आवश्यकता होती है, उसे केर्बरोस कुंजियों के अपने सेट की आवश्यकता होगी। यह वर्चुअल होस्टिंग एवं क्लस्टर को जटिल बनाता है। | ||
* केर्बरोस को केर्बरोस टोकन सर्वर के साथ विश्वसनीय संबंध रखने के लिए उपयोगकर्ता खातों एवं सेवाओं की आवश्यकता होती है। | * केर्बरोस को केर्बरोस टोकन सर्वर के साथ विश्वसनीय संबंध रखने के लिए उपयोगकर्ता खातों एवं सेवाओं की आवश्यकता होती है। | ||
* आवश्यक | * आवश्यक उपयोगकर्ता ट्रस्ट चरणबद्ध वातावरण (उदाहरण के लिए, परीक्षण वातावरण, प्री-प्रोडक्शन वातावरण एवं उत्पादन वातावरण के लिए अलग डोमेन) बनाना मुश्किल बनाता है: या तो डोमेन ट्रस्ट संबंध बनाने की आवश्यकता होती है जो पर्यावरण डोमेन के सख्त अलगाव को रोकती है, या अतिरिक्त उपयोगकर्ता उपयोगकर्ता की आवश्यकता होती है प्रत्येक पर्यावरण के लिए प्रदान किया जाना है। | ||
==सुरक्षा== | ==सुरक्षा== |
Revision as of 10:55, 18 July 2023
Developer(s) | Massachusetts Institute of Technology |
---|---|
Stable release | Version 5, Release 1.21
/ 5 June 2023[1] |
Written in | C |
Operating system | Cross-platform |
Size | 8512k (source code) |
Type | Authentication protocol |
Website | web |
केर्बरोस कंप्यूटर-नेटवर्क प्रमाणीकरण क्रिप्टोग्राफ़िक प्रोटोकॉल है जो अन्य-सुरक्षित नेटवर्क पर संचार करने वाले नोड (नेटवर्किंग) को एक-दूसरे को सुरक्षित प्रविधि से स्वयं की पहचान प्रमाणित करने की अनुमति देने के लिए टिकटों के आधार पर कार्य करता है। इसके डिजाइनरों ने इसे मुख्य रूप से उपयोगकर्ता-सर्वर मॉडल पर लक्षित किया है, एवं यह पारस्परिक प्रमाणीकरण प्रदान करता है, उपयोगकर्ता एवं सर्वर दोनों एक-दूसरे की पहचान को सत्यापित करते हैं। केर्बरोस प्रोटोकॉल संदेश गोपनीय होके बातें सुनने एवं रिप्ले प्रहार से सुरक्षित रहते हैं।
केर्बरोस सममित-कुंजी क्रिप्टोग्राफी पर बनाता है एवं इसके लिए विश्वसनीय तृतीय पक्ष की आवश्यकता होती है, एवं वैकल्पिक रूप से प्रमाणीकरण के कुछ चरणों के समय सार्वजनिक-कुंजी क्रिप्टोग्राफी का उपयोग कर सकता है।[2] केर्बरोस डिफ़ॉल्ट रूप से यूडीपी पोर्ट 88 का उपयोग करता है।
प्रोटोकॉल का नाम ग्रीक पौराणिक कथाओं के चरित्र सेर्बेरस के नाम पर रखा गया था, जो पाताल लोक का क्रूर तीन सिर वाला रक्षक कुत्ता था।[3]
इतिहास एवं विकास
मैसाचुसेट्स की तकनीकी संस्था (एमआईटी) ने प्रोजेक्ट एथेना द्वारा प्रदान की गई नेटवर्क सेवाओं की सुरक्षा के लिए 1988 में केर्बरोस विकसित किया गया।[4][5] इसका प्रथम संस्करण मुख्य रूप से स्टीवन पी. मिलर (सॉफ्टवेयर डिजाइनर) एवं क्लिफ़ोर्ड न्यूमैन द्वारा पूर्व के नीधम-श्रोएडर सममित-कुंजी प्रोटोकॉल के आधार पर डिजाइन किया गया था।[6][7] केर्बरोस संस्करण 1 से 3 प्रायोगिक थे एवं एमआईटी के बाहर प्रस्तावित नहीं किए गए थे।[8]
केर्बरोस संस्करण 4, प्रथम सार्वजनिक संस्करण, 24 जनवरी 1989 को प्रस्तावित किया गया था। चूंकि केर्बरोस 4 को संयुक्त राज्य अमेरिका में विकसित किया गया था, एवं चूंकि इसमें डेटा एन्क्रिप्शन मानक (डीईएस) एन्क्रिप्शन एल्गोरिथम का उपयोग किया गया था, इसलिए अमेरिकी निर्यात नियंत्रण प्रतिबंधों ने इसे अन्य देशों में निर्यात होने से बाध्य कर दिया था। एमआईटी ने सभी एन्क्रिप्शन कोड हटाकर केर्बरोस 4 का निर्यात योग्य संस्करण बनाया,[8] जिसे हड्डियाँ कहा जाता है।[9] ऑस्ट्रेलिया की बॉन्ड विश्वविद्यालय के एरिक यंग ने डीईएस को ईबोन्स नामक संस्करण में बोन्स में तत्पश्चात से प्रस्तावित किया, जिसे किसी भी देश में स्वतंत्र रूप से उपयोग किया जा सकता है। स्वीडन के रॉयल इंस्टीट्यूट ऑफ टेक्नोलॉजी ने केटीएच-केआरबी नामक कार्यान्वयन प्रस्तावित किया।[10]
न्यूमैन एवं जॉन कोहल ने उपस्थित सीमाओं एवं सुरक्षा समस्याओं पर नियंत्रण करने की योजना से 1993 में संस्करण 5 प्रकाशित किया। संस्करण 5 [rfc:1510 आरएफसी 1510] के रूप में सामने आया, जिसे 2005 में [rfc:4120 आरएफसी 4120] द्वारा अप्रचलित कर दिया गया।
2005 में, इंटरनेट इंजीनियरिंग टास्क फोर्स (आईईटीएफ) केर्बरोस वर्किंग ग्रुप ने विशिष्टताओं को अद्यतन किया जिसमें निम्नलिखित अपडेट सम्मिलित हैं:
- एन्क्रिप्शन एवं चेकसम विशिष्टताएँ (आरएफसी 3961) है।
- केर्बरोस 5 (आरएफसी 3962) के लिए उच्च एन्क्रिप्शन मानक (एईएस) एन्क्रिप्शन है।
- केर्बरोस V5 विनिर्देशन का नया संस्करण केर्बरोस नेटवर्क प्रमाणीकरण सेवा (V5) ([rfc:4120 आरएफसी 4120]), यह संस्करण आरएफसी 1510 को अप्रचलित करता है, प्रोटोकॉल के रूपों के अधिक विस्तृत एवं स्पष्टीकरण में इच्छित उपयोग को स्पष्ट करता है।
- जेनेरिक सिक्योरिटी सर्विसेज एप्लीकेशन प्रोग्राम अंतरापृष्ठ (जीएसएस-एपीआई) विनिर्देशन का नया संस्करण केर्बरोस संस्करण 5 सामान्य सुरक्षा सेवाएँ अनुप्रयोग प्रोग्राम अंतरापृष्ठ (जीएसएस-एपीआई) मैकेनिज्म संस्करण 2 (आरएफसी 4121) है।
एमआईटी, बीएसडी के लिए उपयोग की जाने वाली कॉपीराइट अनुमतियों के अनुसार, केर्बरोस के कार्यान्वयन को निःशुल्क उपलब्ध कराता है। 2007 में, एमआईटी ने निरंतर विकास को बढ़ावा देने के लिए केर्बरोस कंसोर्टियम का गठन किया गया। संस्थापक प्रायोजकों में ओरेकल कॉर्पोरेशन, Apple Inc., गूगल, माइक्रोसॉफ्ट, केन्द्रीकृत निगम एवं TeamF1 Inc. जैसे विक्रेता एवं स्वीडन में रॉयल इंस्टीट्यूट ऑफ टेक्नोलॉजी, स्टैनफोर्ड यूनिवर्सिटी, एमआईटी जैसे शैक्षणिक संस्थान एवं साइबरसेफ प्रस्तुत करने वाले साइबरसेफ जैसे विक्रेता सम्मिलित हैं।
प्रोटोकॉल
विवरण
उपयोगकर्ता स्वयं को प्रमाणीकरण सर्वर (एएस) से प्रमाणित करता है जो उपयोगकर्ता नाम को कुंजी वितरण केंद्र (केडीसी) को अग्रेषित करता है। केडीसी टिकट-अनुदान टिकट (टीजीटी) प्रस्तावित करता है, जिस पर समय अंकित होता है एवं टिकट-अनुदान सेवा (टीजीएस) की गुप्त कुंजी का उपयोग करके इसे एन्क्रिप्ट करता है एवं एन्क्रिप्टेड परिणाम को उपयोगकर्ता के कार्य केंद्र पर लौटाता है। यह कभी-कभी ही किया जाता है, सामान्यतः उपयोगकर्ता लॉगऑन पर; टीजीटी किसी बिंदु पर समाप्त हो जाती है, चूंकि इसे उपयोगकर्ता के सत्र प्रबंधक द्वारा लॉग इन करते समय पारदर्शी रूप से नवीनीकृत किया जा सकता है।
जब ग्राहक को किसी अन्य नोड (केर्बरोस भाषा में प्रिंसिपल) पर सेवा के साथ संचार करने की आवश्यकता होती है, तो ग्राहक टीजीटी को टीजीएस को भेजता है, जो सामान्यतः केडीसी के समान होस्ट साझा करता है। सेवा पूर्व से ही टीजीएस के साथ सर्विस प्रिंसिपल नेम (एसपीएन) के साथ पंजीकृत होनी चाहिए। उपयोगकर्ता इस सेवा तक पहुंच का अनुरोध करने के लिए एसपीएन का उपयोग करता है। यह सत्यापित करने के पश्चात कि टीजीटी वैध है एवं उपयोगकर्ता को अनुरोधित सेवा तक पहुंचने की अनुमति है, टीजीएस ग्राहक को टिकट एवं सत्र कुंजी प्रस्तावित करता है। इसके पश्चात उपयोगकर्ता अपने सेवा अनुरोध के साथ टिकट को सर्विस सर्वर (एसएस) को भेजता है।
प्रोटोकॉल का नीचे विस्तार से वर्णन किया गया है।
केर्बरोस के बिना उपयोगकर्ता उपयोगकर्ता-आधारित लॉगिन
- एक उपयोगकर्ता उपयोगकर्ता (कंप्यूटिंग) | उपयोगकर्ता मशीन पर एक उपयोगकर्ता नाम एवं पासवर्ड दर्ज करता है। अन्य क्रेडेंशियल तंत्र जैसे pkinit ([rfc:4556 आरएफसी 4556]) पासवर्ड के स्थान पर सार्वजनिक कुंजी के उपयोग की अनुमति देते हैं। उपयोगकर्ता पासवर्ड को एक सममित सिफर की कुंजी में बदल देता है। यह या तो अंतर्निहित कुंजी शेड्यूलिंग का उपयोग करता है, या एक-तरफ़ा हैश का उपयोग करता है, जो उपयोग किए गए सिफर सुइट | सिफर-सूट पर निर्भर करता है।
- सर्वर उपयोगकर्ता नाम एवं सममित सिफर प्राप्त करता है एवं डेटाबेस से डेटा के साथ इसकी तुलना करता है। यदि सिफर उपयोगकर्ता के लिए संग्रहीत सिफर से मेल खाता है तो लॉगिन सफल था।
ग्राहक प्रमाणीकरण
- उपयोगकर्ता उपयोगकर्ता की ओर से सेवाओं का अनुरोध करते हुए एएस (प्रमाणीकरण सर्वर) को उपयोगकर्ता आईडी का एक स्पष्ट पाठ संदेश भेजता है। (नोट: एएस को न तो गुप्त कुंजी एवं न ही पासवर्ड भेजा जाता है।)
- AS यह देखने के लिए जांच करता है कि उपयोगकर्ता उसके डेटाबेस में है या नहीं। यदि ऐसा है, तो एएस डेटाबेस में पाए गए उपयोगकर्ता के पासवर्ड को हैश करके गुप्त कुंजी उत्पन्न करता है (उदाहरण के लिए, विंडोज सर्वर में सक्रिय निर्देशिका) एवं उपयोगकर्ता को निम्नलिखित दो संदेश वापस भेजता है:
- संदेश ए: उपयोगकर्ता/टीजीएस सत्र कुंजी उपयोगकर्ता/उपयोगकर्ता की गुप्त कुंजी का उपयोग करके एन्क्रिप्ट किया गया।
- संदेश बी: टिकट-अनुदान-टिकट (टीजीटी, जिसमें उपयोगकर्ता आईडी, उपयोगकर्ता नेटवर्क पता, टिकट वैधता अवधि एवं उपयोगकर्ता/टीजीएस सत्र कुंजी सम्मिलित है) टीजीएस की गुप्त कुंजी का उपयोग करके एन्क्रिप्ट किया गया है।
- एक बार जब उपयोगकर्ता को संदेश ए एवं बी प्राप्त हो जाता है, तो वह उपयोगकर्ता द्वारा दर्ज किए गए पासवर्ड से उत्पन्न गुप्त कुंजी के साथ संदेश ए को डिक्रिप्ट करने का प्रयास करता है। यदि उपयोगकर्ता द्वारा दर्ज किया गया पासवर्ड एएस डेटाबेस में पासवर्ड से मेल नहीं खाता है, तो उपयोगकर्ता की गुप्त कुंजी अलग होगी एवं इस प्रकार संदेश ए को डिक्रिप्ट करने में असमर्थ होगी। वैध पासवर्ड एवं गुप्त कुंजी के साथ उपयोगकर्ता उपयोगकर्ता/टीजीएस सत्र कुंजी प्राप्त करने के लिए संदेश ए को डिक्रिप्ट करता है। . इस सत्र कुंजी का उपयोग टीजीएस के साथ आगे संचार के लिए किया जाता है। (नोट: उपयोगकर्ता संदेश बी को डिक्रिप्ट नहीं कर सकता, क्योंकि यह टीजीएस की गुप्त कुंजी का उपयोग करके एन्क्रिप्ट किया गया है।) इस बिंदु पर, उपयोगकर्ता के पास टीजीएस को खुद को प्रमाणित करने के लिए पर्याप्त जानकारी है।
ग्राहक सेवा प्राधिकरण
- सेवाओं का अनुरोध करते समय, ग्राहक टीजीएस को निम्नलिखित संदेश भेजता है:
- संदेश सी: संदेश बी (टीजीएस गुप्त कुंजी का उपयोग करके एन्क्रिप्टेड टीजीटी) एवं अनुरोधित सेवा की आईडी से बना है।
- संदेश डी: प्रमाणक (जो उपयोगकर्ता आईडी एवं टाइमस्टैम्प से बना है), उपयोगकर्ता/टीजीएस सत्र कुंजी (संदेश ए में उपयोगकर्ता द्वारा पाया गया) का उपयोग करके एन्क्रिप्ट किया गया है।
- संदेश सी एवं डी प्राप्त करने पर, टीजीएस संदेश सी से संदेश बी को पुनः प्राप्त करता है। यह टीजीएस गुप्त कुंजी का उपयोग करके संदेश बी को डिक्रिप्ट करता है। यह इसे उपयोगकर्ता/टीजीएस सत्र कुंजी एवं उपयोगकर्ता आईडी (दोनों टीजीटी में हैं) देता है। इस उपयोगकर्ता/टीजीएस सत्र कुंजी का उपयोग करके, टीजीएस संदेश डी (प्रमाणक) को डिक्रिप्ट करता है एवं संदेश बी एवं डी से उपयोगकर्ता आईडी की तुलना करता है; यदि वे मेल खाते हैं, तो सर्वर उपयोगकर्ता को निम्नलिखित दो संदेश भेजता है:
- संदेश ई: उपयोगकर्ता-टू-सर्वर टिकट (जिसमें उपयोगकर्ता आईडी, उपयोगकर्ता नेटवर्क पता, वैधता अवधि एवं उपयोगकर्ता/सर्वर सत्र कुंजी सम्मिलित है) सेवा की गुप्त कुंजी का उपयोग करके एन्क्रिप्ट किया गया है।
- संदेश एफ: उपयोगकर्ता/सर्वर सत्र कुंजी उपयोगकर्ता/टीजीएस सत्र कुंजी के साथ एन्क्रिप्टेड है।
ग्राहक सेवा अनुरोध
- टीजीएस से ई एवं एफ संदेश प्राप्त करने पर, ग्राहक के पास सेवा सर्वर (एसएस) पर खुद को प्रमाणित करने के लिए पर्याप्त जानकारी होती है। उपयोगकर्ता एसएस से जुड़ता है एवं निम्नलिखित दो संदेश भेजता है:
- संदेश ई: पिछले चरण से (उपयोगकर्ता-टू-सर्वर टिकट, टीजीएस द्वारा सेवा की गुप्त कुंजी का उपयोग करके एन्क्रिप्ट किया गया)।
- संदेश जी: एक नया प्रमाणक, जिसमें उपयोगकर्ता आईडी, टाइमस्टैम्प सम्मिलित है एवं उपयोगकर्ता/सर्वर सत्र कुंजी का उपयोग करके एन्क्रिप्ट किया गया है।
- एसएस उपयोगकर्ता/सर्वर सत्र कुंजी को पुनः प्राप्त करने के लिए अपनी गुप्त कुंजी का उपयोग करके टिकट (संदेश ई) को डिक्रिप्ट करता है। सत्र कुंजी का उपयोग करते हुए, एसएस प्रमाणक को डिक्रिप्ट करता है एवं संदेश ई एवं जी से उपयोगकर्ता आईडी की तुलना करता है, यदि वे मेल खाते हैं तो सर्वर उपयोगकर्ता को उसकी वास्तविक पहचान एवं ग्राहक की सेवा करने की इच्छा की पुष्टि करने के लिए निम्नलिखित संदेश भेजता है:
- उपयोगकर्ता उपयोगकर्ता/सर्वर सत्र कुंजी का उपयोग करके पुष्टिकरण (संदेश एच) को डिक्रिप्ट करता है एवं जांचता है कि टाइमस्टैम्प सही है या नहीं। यदि ऐसा है, तो उपयोगकर्ता सर्वर पर भरोसा कर सकता है एवं सर्वर को सेवा अनुरोध प्रस्तावित करना शुरू कर सकता है।
- सर्वर उपयोगकर्ता को अनुरोधित सेवाएँ प्रदान करता है।
ऑपरेटिंग सिस्टम द्वारा समर्थन
माइक्रोसॉफ्ट विंडोज़
Windows 2000 एवं पश्चात के संस्करण अपनी डिफ़ॉल्ट प्रमाणीकरण विधि के रूप में केर्बरोस का उपयोग करते हैं।[13] केर्बरोस प्रोटोकॉल सुइट में कुछ Microsoft परिवर्धन [rfc:3244 आरएफसी 3244] Microsoft Windows 2000 केर्बरोस बदलें पासवर्ड एवं पासवर्ड सेट प्रोटोकॉल में प्रलेखित हैं। [rfc:4757 आरएफसी 4757] Microsoft द्वारा RC4 सिफर के उपयोग का दस्तावेजीकरण करता है। जबकि Microsoft केर्बरोस प्रोटोकॉल का उपयोग एवं विस्तार करता है, यह MIT सॉफ़्टवेयर का उपयोग नहीं करता है।
केर्बरोस को पसंदीदा प्रमाणीकरण विधि के रूप में उपयोग किया जाता है: सामान्य तौर पर, किसी उपयोगकर्ता को Windows डोमेन से जोड़ने का अर्थ है उस उपयोगकर्ता से Windows डोमेन में सेवाओं एवं उस डोमेन के साथ विश्वास संबंधों वाले सभी डोमेन के प्रमाणीकरण के लिए डिफ़ॉल्ट प्रोटोकॉल के रूप में केर्बरोस को सक्षम करना।[13]
इसके विपरीत, जब उपयोगकर्ता या सर्वर या दोनों एक डोमेन से जुड़े नहीं होते हैं (या एक ही विश्वसनीय डोमेन वातावरण का हिस्सा नहीं होते हैं), तो विंडोज़ उपयोगकर्ता एवं सर्वर के बीच प्रमाणीकरण के लिए एनटीएलएम का उपयोग करेगा।[13]
इंटरनेट वेब एप्लिकेशन एसएसपीआई के अनुसार प्रदान किए गए एपीआई का उपयोग करके डोमेन से जुड़े ग्राहकों के लिए प्रमाणीकरण विधि के रूप में केर्बरोस को प्रस्तावित कर सकते हैं।
माइक्रोसॉफ्ट विंडोज एवं विंडोज सर्वर सम्मिलित हैं setspn, एक कमांड लाइन इंटरफेस|कमांड-लाइन उपयोगिता जिसका उपयोग सक्रिय निर्देशिका सेवा खाते के लिए सर्विस प्रिंसिपल नेम्स (एसपीएन) को पढ़ने, संशोधित करने या हटाने के लिए किया जा सकता है।[14][15]
यूनिक्स एवं अन्य ऑपरेटिंग सिस्टम
फ्रीबीएसडी, ओपनबीएसडी, एप्पल के मैकओएस, रेड हैट एंटरप्राइज लिनक्स, सन माइक्रोसिस्टम्स के सोलारिस (ऑपरेटिंग सिस्टम), आईबीएम के एईक्स, एचपी-यूएक्स एवं अन्य सहित कई यूनिक्स जैसे ऑपरेटिंग सिस्टम में उपयोगकर्ताओं या सेवाओं के केर्बरोस प्रमाणीकरण के लिए सॉफ्टवेयर सम्मिलित हैं। विभिन्न गैर-यूनिक्स जैसे ऑपरेटिंग सिस्टम जैसे z/OS, IBM i एवं OpenVMS में भी केर्बरोस समर्थन की सुविधा है। एम्बेडेड प्लेटफ़ॉर्म पर चलने वाले उपयोगकर्ता एजेंटों एवं नेटवर्क सेवाओं के लिए केर्बरोस वी प्रमाणीकरण प्रोटोकॉल का एंबेडेड कार्यान्वयन भी कंपनियों से उपलब्ध है।
कमियाँ एवं सीमाएँ
- केर्बरोस में समय की सख्त आवश्यकताएं हैं, जिसका अर्थ है कि सम्मिलित मेजबानों की घड़ियों को कॉन्फ़िगर की गई सीमाओं के भीतर सिंक्रनाइज़ किया जाना चाहिए। टिकटों की एक समय उपलब्धता अवधि होती है, एवं यदि होस्ट घड़ी केर्बरोस सर्वर घड़ी के साथ सिंक्रनाइज़ नहीं है, तो प्रमाणीकरण विफल हो जाएगा। डिफ़ॉल्ट कॉन्फ़िगरेशन प्रति MIT के लिए आवश्यक है कि घड़ी का समय पाँच मिनट से अधिक न हो अलग। व्यवहार में, नेटवर्क टाइम प्रोटोकॉल डेमॉन का उपयोग सामान्यतः होस्ट घड़ियों को सिंक्रनाइज़ रखने के लिए किया जाता है। ध्यान दें कि कुछ सर्वर (Microsoft का कार्यान्वयन उनमें से एक है) एन्क्रिप्टेड सर्वर समय वाला KRB_AP_ERR_SKEW परिणाम लौटा सकता है यदि दोनों घड़ियों में कॉन्फ़िगर किए गए अधिकतम मान से अधिक ऑफसेट है। उस स्थिति में, उपयोगकर्ता ऑफसेट खोजने के लिए दिए गए सर्वर समय का उपयोग करके समय की गणना करके पुनः प्रयास कर सकता है। यह व्यवहार आरएफसी 4430 में प्रलेखित है।
- प्रशासन प्रोटोकॉल मानकीकृत नहीं है एवं सर्वर कार्यान्वयन के बीच भिन्न है। पासवर्ड परिवर्तन [rfc:3244 आरएफसी 3244] में वर्णित हैं।
- सममित क्रिप्टोग्राफी अपनाने के मामले में (केर्बरोस सममित या असममित (सार्वजनिक-कुंजी) क्रिप्टोग्राफी का उपयोग करके कार्य कर सकता है), क्योंकि सभी प्रमाणीकरण एक केंद्रीकृत कुंजी वितरण केंद्र (केडीसी) द्वारा नियंत्रित होते हैं, इस प्रमाणीकरण बुनियादी ढांचे से समझौता करने से हमलावर को किसी का भी प्रतिरूपण करने की अनुमति मिल जाएगी उपयोगकर्ता.
- प्रत्येक नेटवर्क सेवा जिसे एक अलग होस्ट नाम की आवश्यकता होती है, उसे केर्बरोस कुंजियों के अपने सेट की आवश्यकता होगी। यह वर्चुअल होस्टिंग एवं क्लस्टर को जटिल बनाता है।
- केर्बरोस को केर्बरोस टोकन सर्वर के साथ विश्वसनीय संबंध रखने के लिए उपयोगकर्ता खातों एवं सेवाओं की आवश्यकता होती है।
- आवश्यक उपयोगकर्ता ट्रस्ट चरणबद्ध वातावरण (उदाहरण के लिए, परीक्षण वातावरण, प्री-प्रोडक्शन वातावरण एवं उत्पादन वातावरण के लिए अलग डोमेन) बनाना मुश्किल बनाता है: या तो डोमेन ट्रस्ट संबंध बनाने की आवश्यकता होती है जो पर्यावरण डोमेन के सख्त अलगाव को रोकती है, या अतिरिक्त उपयोगकर्ता उपयोगकर्ता की आवश्यकता होती है प्रत्येक पर्यावरण के लिए प्रदान किया जाना है।
सुरक्षा
डेटा एन्क्रिप्शन स्टैंडर्ड (डीईएस) सिफर का उपयोग केर्बरोस के साथ संयोजन में किया जा सकता है, लेकिन यह अब इंटरनेट मानक नहीं है क्योंकि यह कमजोर है।[16] सुरक्षा कमजोरियाँ उन उत्पादों में मौजूद हैं जो कर्बेरोस के पुराने संस्करणों को प्रस्तावित करते हैं जिनमें एईएस जैसे नए एन्क्रिप्शन सिफर के लिए समर्थन की कमी है।
यह भी देखें
- केवल हस्ताक्षर के ऊपर
- पहचान प्रबंधन
- SPNEGO
- एस/कुंजी
- सुरक्षित रिमोट पासवर्ड प्रोटोकॉल (एसआरपी)
- सामान्य सुरक्षा सेवा अनुप्रयोग प्रोग्राम इंटरफ़ेस (जीएसएस-एपीआई)
- होस्ट आइडेंटिटी प्रोटोकॉल (HIP)
- एकल साइन-ऑन कार्यान्वयन की सूची
संदर्भ
- ↑ "Kerberos 5 Release 1.21".
- ↑ RFC 4556, abstract.
- ↑ "केर्बरोस प्रमाणीकरण". IONOS Digitalguide (in English). Retrieved 2022-08-25.
- ↑ Garman 2003, p. 5.
- ↑ Steiner, Jennifer G.; Geer, Daniel E. (21 July 1988). एथेना पर्यावरण में नेटवर्क सेवाएँ. Proceedings of the Winter 1988 Usenix Conference. CiteSeerX 10.1.1.31.8727.
- ↑ Steiner, Jennifer G.; Neuman, Clifford; Schiller, Jeffrey I. (February 1988). Kerberos: An authentication service for open network systems. Proceedings of the Winter 1988 USENIX Conference. CiteSeerX 10.1.1.112.9002. S2CID 222257682.
- ↑ Elizabeth D. Zwicky; Simon Cooper; D. Brent (26 Jun 2000). Building Internet Firewalls: Internet and Web Security. O'Reilly. ISBN 9781565928718.
- ↑ 8.0 8.1 Garman 2003, p. 7.
- ↑ Pröhl & Kobras 2022, p. 7.
- ↑ Garman 2003, pp. 7–8.
- ↑ C., Neuman; J., Kohl (1993). "The Kerberos Network Authentication Service (V5)". doi:10.17487/RFC1510. Archived from the original on 2016-08-21.
{{cite journal}}
: Cite journal requires|journal=
(help) - ↑ Clifford, Neuman; Sam, Hartman; Tom, Yu; Kenneth, Raeburn (2005). "The Kerberos Network Authentication Service (V5)". doi:10.17487/RFC4120. Archived from the original on 2016-08-21.
{{cite journal}}
: Cite journal requires|journal=
(help) - ↑ 13.0 13.1 13.2 "What Is Kerberos Authentication?". Microsoft TechNet. Archived from the original on 2016-12-20.
- ↑ Setspn - Windows CMD - SS64.com
- ↑ Setspn | Microsoft Docs
- ↑ Tom, Yu; Love, Astrand (2012). "Deprecate DES, RC4-HMAC-EXP, and Other Weak Cryptographic Algorithms in Kerberos". doi:10.17487/RFC6649. Archived from the original on 2015-10-27.
{{cite journal}}
: Cite journal requires|journal=
(help)
- General
- Garman, Jason (2003). Kerberos: The Definitive Guide (in English). O'Reilly Media, Inc. ISBN 978-0-596-00403-3.
- Pröhl, Mark; Kobras, Daniel (14 April 2022). Kerberos: Single Sign-on in gemischten Linux/Windows-Umgebungen (in Deutsch). dpunkt.verlag. p. 7.
- Lynn Root (May 30, 2013) (2 April 2013). "Explain like I'm 5: Kerberos". Blog of Lynn Root.
- Microsoft TechNet 2017. "Basic Concepts for the Kerberos Protocol". MSDN Library.
- Resource Kit Team. "Microsoft Kerberos (Windows)". MSDN Library.
- B. Clifford Neuman; Theodore Ts'o (September 1994). "Kerberos: An Authentication Service for Computer Networks". IEEE Communications. 32 (9): 33–8. doi:10.1109/35.312841. S2CID 45031265.
- Kohl, John T.; Neuman, B. Clifford; Ts'o, Theodore Y. (1994). "The Evolution of the Kerberos Authentication System". In Brazier, F. M. T.; Johansen, D (eds.). Distributed open systems. IEEE Computer Society Press. pp. 78–94. CiteSeerX 10.1.1.120.944. ISBN 978-0-8186-4292-0. OCLC 1191406172.
- "Kerberos Overview: An Authentication Service for Open Network Systems". Cisco Systems. 19 January 2006. Retrieved 15 August 2012.
- "How Kerberos Authentication Works". learn-networking.com. 28 January 2008. Retrieved 15 August 2012.
- "What is Kerberos Authentication?: Logon and Authentication". Microsoft TechNet. Retrieved 7 December 2016.
- आरएफसीs
- RFC 1510 The केर्बरोस Network Authentication Service (V5) [Obsolete]
- RFC 1964 The केर्बरोस Version 5 GSS-API Mechanism
- RFC 3961 Encryption and Checksum Specifications for केर्बरोस 5
- RFC 3962 Advanced Encryption Standard (AES) Encryption for केर्बरोस 5
- RFC 4120 The केर्बरोस Network Authentication Service (V5) [Current]
- RFC 4121 The केर्बरोस Version 5 Generic Security Service Application Program Interface (GSS-API) Mechanism: Version 2
- RFC 4537 केर्बरोस Cryptosystem Negotiation Extension
- RFC 4556 Public Key Cryptography for Initial Authentication in केर्बरोस (PKINIT)
- RFC 4557 Online Certificate Status Protocol (OCSP) Support for Public Key Cryptography for Initial Authentication in केर्बरोस (PKINIT)
- RFC 4757 The RC4-HMAC केर्बरोस Encryption Types Used by Microsoft Windows [Obsolete]
- RFC 5021 Extended केर्बरोस Version 5 Key Distribution Center (KDC) Exchanges over TCP
- RFC 5349 Elliptic Curve Cryptography (ECC) Support for Public Key Cryptography for Initial Authentication in केर्बरोस (PKINIT)
- RFC 5868 Problem Statement on the Cross-Realm Operation of केर्बरोस
- RFC 5896 Generic Security Service Application Program Interface (GSS-API): Delegate if Approved by Policy
- RFC 6111 Additional केर्बरोस Naming Constraints
- RFC 6112 Anonymity Support for केर्बरोस
- RFC 6113 A Generalized Framework for केर्बरोस Pre-Authentication
- RFC 6251 Using केर्बरोस Version 5 over the Transport Layer Security (TLS) Protocol
- RFC 6448 The Unencrypted Form of केर्बरोस 5 KRB-CRED Message
- RFC 6542 केर्बरोस Version 5 Generic Security Service Application Program Interface (GSS-API) Channel Binding Hash Agility
- RFC 6560 One-Time Password (OTP) Pre-Authentication
- RFC 6649 Deprecate DES, RC4-HMAC-EXP, and Other Weak Cryptographic Algorithms in केर्बरोस
- RFC 6784 केर्बरोस Options for DHCPv6
- RFC 6803 Camellia Encryption for केर्बरोस 5
- RFC 6806 केर्बरोस Principal Name Canonicalization and Cross-Realm Referrals
- RFC 6880 An Information Model for केर्बरोस Version 5
- RFC 8009 AES Encryption with HMAC-SHA2 for केर्बरोस 5
अग्रिम पठन
- "Novell Inc's Comment to the Proposed Settlement between Microsoft and the Department of Justice, pursuant to the Tunney Act". Civil Action No. 98-1232 (CKK): United States of America v. Microsoft Corporation. Department of Justice. 29 January 2002. Retrieved 15 August 2012.
- Bryant, Bill (February 1988). "Designing an Authentication System: A Dialogue in Four Scenes". Humorous play concerning how the design of Kerberos evolved. MIT.
- Hornstein, Ken (18 August 2000). "Kerberos FAQ, v2.0". Secretary of Navy. Archived from the original on 3 December 2002. Retrieved 15 August 2012.
- Bellovin, S. M.; Merritt, M. (1 October 1990). "Limitations of the Kerberos authentication system". ACM SIGCOMM Computer Communication Review. 20 (5): 119–132. doi:10.1145/381906.381946. S2CID 8014806.
- Neuman, B.C.; Ts'o, T. (September 1994). "Kerberos: an authentication service for computer networks". IEEE Communications Magazine. 32 (9): 33–38. doi:10.1109/35.312841. S2CID 45031265.
- Bella, Giampaolo; Paulson, Lawrence C. (1998). "Kerberos Version IV: Inductive analysis of the secrecy goals". Computer Security — ESORICS 98. Lecture Notes in Computer Science. Vol. 1485. pp. 361–375. doi:10.1007/BFb0055875. ISBN 978-3-540-65004-1.
- Abdelmajid, N.T.; Hossain, M.A.; Shepherd, S.; Mahmoud, K. (2010). "Improved Kerberos Security Protocol Evaluation using Modified BAN Logic". 2010 10th IEEE International Conference on Computer and Information Technology. pp. 1610–1615. doi:10.1109/CIT.2010.285. ISBN 978-1-4244-7547-6. S2CID 6246388.
बाहरी संबंध
- केर्बरोस Consortium
- केर्बरोस page at MIT website
- केर्बरोस Working Group at IETF website
- केर्बरोस Sequence Diagram Archived 2015-03-26 at the Wayback Machine
- Heimdal/केर्बरोस implementation