2017-06-17 10 views
2

2つのKDC(EXAMPLE.COM & HADOOP.COM)の間でクロスレルム認証を設定しようとしています。そのため、領域EXAMPLE.COMのユーザーはHADOOP.COMのサービスにアクセスできます。私は同じのための私のkrb5.confにcapathsセクションを追加しました:MIT-Kerberosで「ローカルレルムの参照」が失敗するのはなぜですか?

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

[libdefaults] 
default_realm = EXAMPLE.COM 
dns_lookup_realm = false 
dns_lookup_kdc = false 
ticket_lifetime = 24h 
renew_lifetime = 7d 
forwardable = true 

[realms] 
EXAMPLE.COM = { 
    kdc = examplekdc.example.com 
    admin_server = examplekdc.example.com 
} 

HADOOP.COM = { 
    kdc = hadoopkdc.hadoop.com 
    admin_server = hadoopkdc.hadoop.com 
} 

[domain_realm] 
.example.com = EXAMPLE.COM 
example.com = EXAMPLE.COM 

[capaths] 
HADOOP.COM = { 
    EXAMPLE.COM = . 
} 

は、私はまた、両方のKDCのに必要な主要krbtgt/[email protected]を追加しました。これまでのところ、すべてが機能しており、私のアプリケーションは必要なことをすることができます。

私が心配ですがEXAMPLE.COMの私のトレースログに次の行です:

[158447] 1497720267.441664: TGS request result: -1765328377/Server myservice/[email protected] not found in Kerberos database 
[158447] 1497720267.441680: Local realm referral failed; trying fallback realm HADOOP.COM 

私の質問は以下の通りです:まさにこのローカルレルムの紹介です

  1. 何?クロスレルム要求の場合、このケルベロスの専門用語は ですか?
  2. ローカルレルムの参照が失敗するのはなぜですか?ローカルレルムの参照をどのようにしたいのかを明示的に指定する方法を教えてください。
  3. フォールバック領域の意味は何ですか?そして私はどのように指定するのですか?

私のkrb5.confからわかるように、私はフォールバックレルムまたはリフェラルを明示的に指定していないので、kerberosがデフォルト値を選択していると思います。私はそれらを明示的に指定する方法を知りたい。

+0

私は実践していません。私はそのエラーメッセージのためのソースgrepに行かなければならなかった。私の頭の上から何が起こっているのか確かめていたでしょう。 –

答えて

0
[158447] 1497720267.441664: TGS request result: -1765328377/Server myservice/[email protected] not found in Kerberos database 

クライアントがKDCにサービスプリンシパルを要求しました。あなたのKDCはそのプリンシパルの領域を見つける方法を知らなかった。 私はあなたが

[domain_realms] 
    .hadoop.com = HADOOP.COM 

のような内容でEXAMPLE.COM KDCが使用するkrb5.conf[domain_realms]セクションにエントリを追加した場合、KDCはhadoop.comで終わるホストがHADOOP.COMレルムによって提供されていることを知っているだろうと試みるだろうと信じています紹介自体。クライアントが最初の要求にKDCからエラーを取得するときに

[158447] 1497720267.441680: Local realm referral failed; trying fallback realm HADOOP.COM 

これはsrc/lib/krb5/krb/get_creds.ctry_fallback機能で生産されます。 クライアントは、クライアントが推測できない場合、要求が失敗する可能性があるため、KDCよりもサービスの領域を推測するのに少し積極的です。 クライアントはHADOOP.COMを試行します。最後の手段は、ホスト名を取り除いて大文字のドメイン名を試すことだからです。 KDCを正しく設定すると、1つの要求を保存します。 Windowsホストは、MIT KerberosよりもKDCの正しい設定についてもっと気にします。

関連する問題