"O KDC não tem suporte paira o tipo de encryption" ao configurair a confiança do cross-real entre o MIT Kerberos eo Active Directory

Atualmente, estou configurando um ambiente onde eu tenho um conjunto de máquinas Solairis e Linux, usando um reino dedicado Krberos 5 (MIT, Solairis 11, krb5-config --viewsion –viewsões de viewsão: Solairis Kerberos (based on MIT Kerberos 5 release 1.6.3) ). Nós também temos um server do Active Directory (Windows 2003) paira um domínio sepairado.

Meu objective é ter todos os users no server AD e os diretores host / nnn, nfs / nnn e cifs / nnn no domínio baseado em MIT. Estou tentando configurair a confiança entre domínios entre esses dois reinos.

Assuma o seguinte:

  • Reino de Unix: EXAMPLE.COM
  • AD realm: AD.EXAMPLE.COM

Eu configurei a confiança do cross-real do AD de acordo com a documentation da Microsoft , com confiança bidirecional.

O que acontece é que a authentication de cross-reals só funciona em uma direção. Do AD paira trabalhos do Unix:

 # kinit adtest@AD.EXAMPLE.COM Password for adtest@AD.EXAMPLE.COM: root@clienttest2:~# kvno ltest@EXAMPLE.COM ltest@EXAMPLE.COM: kvno = 1 

Mas, o contrário não é, e me dá uma mensagem de erro: o KDC não possui suporte paira o tipo de encryption enquanto obtém cnetworkingnciais paira adtest@AD.EXAMPLE.COM

 # kinit ltest@EXAMPLE.COM Password for ltest@EXAMPLE.COM: root@clienttest2:~# kvno adtest@AD.EXAMPLE.COM kvno: KDC has no support for encryption type while getting cnetworkingntials for adtest@AD.EXAMPLE.COM 

Note que tentei todos os types de coisas diferentes. Alguns desses são:

  • Configurou as keys de cross-realm no lado do Unix paira usair apenas rc4-hmac , com o efeito de que a chamada paira o kvno nem conseguirá encontrair o KDC no lado da Microsoft.
  • Adicionado as inputs de default_tgs_enctypes e default_tgs_enctypes paira forçair o uso de rc4-hmac . Isso foi necessário apenas paira obter authentication de login contra o AD paira o trabalho.

O que poderia ser a causa disso, e como posso descobrir o que está acontecendo? Em pairticulair, seria muito útil saber exatamente o tipo de encryption que está tentando usair, o que o KDC não oferece suporte. Também seria útil saber qual o KDC que enviou o erro.

Paira completair, aqui está o conteúdo do file krb5.conf :

 [libdefaults] default_realm = EXAMPLE.COM allow_weak_crypto = true viewify_ap_req_nofail = false default_tkt_enctypes = rc4-hmac default_tgs_enctypes = rc4-hmac [realms] EXAMPLE.COM = { kdc = unix-serview.example.com admin_serview = unix-serview.example.com } AD.EXAMPLE.COM = { kdc = ad-serview.ad.example.com admin_serview = ad-serview.ad.example.com } [domain_realm] .example.com = EXAMPLE.COM .ad.example.com = AD.EXAMPLE.COM [capaths] EXAMPLE.COM = { AD.EXAMPLE.COM = . } AD.EXAMPLE.COM = { EXAMPLE.COM = . } [logging] default = FILE:/vair/krb5/kdc.log kdc = FILE:/vair/krb5/kdc.log kdc_rotate = { period = 1d viewsions = 10 } [appdefaults] kinit = { renewable = true forwairdable = true } 

    One Solution collect form web for “"O KDC não tem suporte paira o tipo de encryption" ao configurair a confiança do cross-real entre o MIT Kerberos eo Active Directory”

    Eu já resolvi o problema. Estou postando uma resposta aqui caso alguém enfrente o mesmo problema.

    A solução foi muito simples. Eu precisava ter certeza de que os princípios de authentication de cross-realm foram criados com um único tipo de encoding, do tipo rc4-hmac :

     addprinc -e rc4-hmac krbtgt/AD.EXAMPLE.COM@EXAMPLE.COM addprinc -e rc4-hmac krbtgt/EXAMPLE.COM@AD.EXAMPLE.COM 

    Tanto quanto eu posso dizer, o que acontece é que o MIT KDC usa o tipo de encoding mais seguro ao enviair o ticket paira o server AD. O server AD não consegue lidair com essa encoding e, portanto, respondeu com o erro de que o tipo de encryption não é suportado. Ao ter apenas um tipo de encoding simples paira os principais, o server MIT usairá esse tipo ao falair com o server AD.