Kinit एक डोमेन सर्वर से कनेक्ट नहीं होगा: प्रारंभिक क्रेडेंशियल्स प्राप्त करते समय KDC के लिए स्थानीय नहीं


13

मैं एक परीक्षित वातावरण स्थापित कर रहा हूँ जहाँ लिनक्स (Ubuntu 10.04) क्लाइंट Windows Server 2008 R2 डोमेन सर्वर को प्रमाणित करेंगे।

मैं यहाँ केर्बरोस क्लाइंट स्थापित करने के लिए आधिकारिक उबंटू गाइड का अनुसरण कर रहा हूं: https://help.ubuntu.com/community/Samba/Kerberos , लेकिन kinitडोमेन सर्वर से कनेक्ट करने के लिए कमांड चलाते समय मुझे एक समस्या का सामना करना पड़ा है ।

आदेश मैं चला रहा हूँ है: kinit Administrator@DS.DOMAIN.COM। यह आदेश निम्न त्रुटि देता है:

Realm not local to KDC while getting initial credentials। दुर्भाग्यवश, मुझे Google खोजों के माध्यम से कोई भी ऐसा नहीं मिला, जिसने इस सटीक त्रुटि का अनुभव किया हो, इसलिए मुझे इसका कोई मतलब नहीं है।

क्लाइंट सर्वर के होस्टनाम को पिंग करने में सक्षम है, इसलिए DNS सर्वर डोमेन सर्वर की ओर इशारा कर रहा है।

नीचे मेरी krb5.conf फ़ाइल है:

[libdefaults]
default = DS.DOMAIN.COM
dns_lookup_realm = true
dns_lookup_kdc true

[realms]
    DS.DOMAIN.COM = {
        kdc = ds.domain.com:88
        admin_server = ds.domain.com
        default_domain = domain.com
    }

[domain_realm]
    .domain.com = DS.DOMAIN.COM
    domain.com = DS.DOMAIN.COM

मैं इन त्रुटियों को कैसे ठीक कर सकता हूं? मुझे बहुत मदद मिलेगी जो मुझे मिल सकती है!

जवाबों:


12

क्या आपका डोमेन नाम है DS.DOMAIN.COMया बस DOMAIN.COM?

अपने स्थानों में आपको उनसे मेल खाना चाहिए, इसलिए यह मानते हुए कि DS.DOMAIN.COM आपका डोमेन है जिसे आपको बदलने की आवश्यकता है:

[domain_realm]
    .domain.com = DS.DOMAIN.COM
    domain.com = DS.DOMAIN.COM

सेवा

[domain_realm]
    .ds.domain.com = DS.DOMAIN.COM
    ds.domain.com = DS.DOMAIN.COM

हालाँकि, यदि आप डोमेन वास्तव में DOMAIN.COMहैं , तो आपको अपने krb5.conf को बदलने की आवश्यकता होगी:

[libdefaults]
default = DOMAIN.COM
dns_lookup_realm = true
dns_lookup_kdc = true

[realms]
    DOMAIN.COM = {
        kdc = ds.domain.com:88
        #You can have more than one kds, just keep adding more kdc =
        #entries
        #kdc = dsN.domain.com:88
        #Uncomment if you have a krb admin server
        #admin_server = ds.domain.com:749
        default_domain = domain.com
    }

[domain_realm]
    .domain.com = DOMAIN.COM
    domain.com = DOMAIN.COM

और फिर आप ऐसा kinitचाहेंगे:kinit Administrator@DOMAIN.COM


हेडडेस्क वहाँ यह एक स्पष्ट बात की तरह मुझे घूर रहा था। COURSE का ad.domain.com = AD.DOMAIN.COM वहां होना चाहिए। Gaah।
19ad में sysadmin1138

@sysadmin: कोई चिंता नहीं ... मैं सिर्फ सक्रिय रूप से एक AD एकीकृत SMB सर्वर का निर्माण कर रहा हूं और मेरे krb5.conf को घूर रहा है एक समस्या का पता लगाने की कोशिश कर रहा है जो कि सांबा 3.0 में एक बग समाप्त हो गया। :-D
Zypher

मुझे यह प्रयास करने की आवश्यकता होगी। हालाँकि, डोमेन नाम: DS.DOMAIN.COM मेरा Windows Server's Hostname+DOMAIN.COM
फान्टो

@ फ़ान्टो तो आपको मेरे निचले सुझाव का उपयोग करने की आवश्यकता है। आप एक होस्ट नाम को एक डोमेन के रूप में निर्दिष्ट कर रहे हैं जो कि आपको अपनी त्रुटियां दे रहा है। kdc और / या व्यवस्थापक सर्वर वह जगह है जहाँ आप होस्ट नाम डालेंगे।
20

3

स्रोत कोड में पेकिंग करने पर, ऐसा लगता है कि उस त्रुटि को फेंक दिया जाता है जब बातचीत प्रक्रिया दूसरे डोमेन के लिए एक रेफरल प्राप्त करती है और वह डोमेन 'स्थानीय', या आपके krb5.conf कॉन्फ़िगरेशन में नहीं है।

00219 / *
00220 * यदि बैकेंड ने एक मूलधन लौटाया जो स्थानीय में नहीं है
00221 * दायरे, फिर हमें क्लाइंट को उस दायरे को संदर्भित करना होगा।
00222 * /
00223 अगर (is_local_principal (client.princ)) {
00224 / * प्रवेश एक और दायरे के लिए एक रेफरल है * /
00225 स्थिति = "संदर्भ";
00226 इरोड = KRB5KDC_ERR_WRONG_REALM;
00227 गोटो गड़बड़;
00228}

यह क्या हो सकता है, मैं आपको नहीं बता सकता। संभवतः यह आपके सक्रिय निर्देशिका वातावरण पर निर्भर करता है, और पेड़ में कई डोमेन हैं या नहीं। आपको शायद अधिक domain_realm उपनामों की आवश्यकता है, लेकिन वास्तव में हम यहां से नहीं बता सकते हैं।


2

मेरे पास समान krb5.conf का उपयोग करके एक ही संदेश था जो Zypher द्वारा प्रदान किया गया था:

[libdefaults]
   default = MYDOMAIN.COM
   dns_lookup_realm = true
   dns_lookup_kdc = true
   ticket_lifetime = 24h
   renew_lifetime = 7d
   forwardable = true

[realms]
MYDOMAIN.COM = {
   kdc = mydc.mydomain.com:88
   admin_server = mydc.mydomain.com:749
   default_domain = mydomain.com
}

[domain_realm]
   .mydomain.com = MYDOMAIN.COM
   mydomain.com = MYDOMAIN.COM

(क्षमा करें, ऐसा लगता है कि मुझे उचित प्रारूपण नहीं मिल सकता है: /)

मेरे मामले में, मुझे MYDOMAIN.COM की बजाए MYDOMAIN.LOCAL की ओर इशारा करना चाहिए। निश्चित नहीं है कि यह सामान्य रूप से AD में प्रमाणीकरण सेटिंग के कारण है या केवल मेरे AD डोमेन के लिए है। मेरे डोमेन में 2 DC हैं, एक W2k3 R2 है और दूसरा (krb5.conf में mydc.mydomain.com के रूप में निर्दिष्ट) W2k8 R2 है। लेकिन "प्रारंभिक क्रेडेंशियल्स प्राप्त करते समय" केडीसी के लिए यह वास्तविक कारण नहीं है कि यह एक और संभावित कारण है


2

मेरे पास यह बहुत ही था और मैंने पाया कि मेरे पास यह फिक्स करने के बाद जवाब इतना आसान था। Linuxqustions.org पर तार्किक रूप से धन्यवाद।

kinit -V myname@domain.net
kinit: KDC reply did not match expectations while getting initial credentials

kinit -V myname@DOMAIN.NET
Authenticated to Kerberos v5

राजधानियाँ यहाँ सभी अंतर बनाती हैं। मुझे पता है कि यह उदाहरणों में दिखाया गया है लेकिन मैं इसे तनाव देना चाहता था।


वास्तव में एक ही मुद्दा था, मेरे एनवी के लिए ऊपरी मामलों में डोमेन को काम करने के लिए !!
समीर औलसाडी

0

उस मशीन को एक डोमेन से अलग डोमेन में जोड़ने की कोशिश करते समय मुझे यह त्रुटि मिली। संपादन /etc/krb5.conf ने भी काम नहीं किया। फिर मैंने विभिन्न डोमेन के लिए सामान को फिर से कॉन्फ़िगर करने के लिए निम्न कमांड की कोशिश की

# sudo dpkg-reconfigure -plow krb5-config

वांछित विकल्पों और सेटिंग्स के साथ जो किनीट कमांड में उपरोक्त त्रुटि देना बंद कर देता है। संकल्प लिया।


0

बीमार इसे सिर्फ इसलिए जोड़ें क्योंकि मैं सिर्फ एक ही त्रुटि के लिए यहां समाप्त हुआ था, लेकिन एक और समस्या के लिए एक और ठीक पाया गया ... सुनिश्चित करें कि डोमेन सभी कैप में है: my.user@DOMAIN.LOCAL और नहीं my.user@domain.local ... मैं अपनी जिंदगी के सिर्फ 2 घंटे इस वजह से हार गया ...


0

मुझे पता है कि यह एक पुराना प्रश्न है, लेकिन मैं भविष्य के समस्या निवारकों के लिए जोड़ना चाहता हूं कि इस मुद्दे के लिए मेरा संकल्प सभी सुझाए गए उत्तरों का एक संयोजन था, साथ ही साथ अपने प्राथमिक डोमेन नियंत्रक को मेरे साथ जोड़ना /etc/hosts


-1
[logging]
default = FILE:/var/log/krb5libs.log
kdc = FILE:/var/log/krb5kdc.log
admin_server = FILE:/var/log/kadmind.log

[libdefaults]
default_realm = DOMAIN.LOCAL
dns_lookup_kdc = true
dns_lookup_realm = true
ticket_lifetime = 24h
#default_keytab_name = /etc/squid3/PROXY.keytab

; for Windows 2003
; default_tgs_enctypes = rc4-hmac des-cbc-crc des-cbc-md5
; default_tkt_enctypes = rc4-hmac des-cbc-crc des-cbc-md5
; permitted_enctypes = rc4-hmac des-cbc-crc des-cbc-md5
; for Windows 2008 with AES
default_tgs_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
default_tkt_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
permitted_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5

[realms]
DOMAIN.LOCAL = {
kdc = dc.domain.local
admin_server = dc.domain.local
default_domain = domain.local
kpasswd_server = dc.domain.local
}

[domain_realm]
.DOMAIN.LOCAL = DOMAIN.LOCAL
DOMAIN.LOCAL = DOMAIN.LOCAL

एक रजिस्टर रखें


2
कृपया यह समझाने के लिए कि यह समस्या का समाधान कैसे हो रहा है, प्रासंगिक पाठ जोड़ें।
Diamant
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.