Eu tenho uma máquina com o Samba 4 AD e a segunda como cliente. Após dois dias de boa operação, de repente, o kinit
parou de funcionar no lado do cliente. O motivo é bastante misterioso. Não é possível resolver o nome do servidor. Obtém a partir do registro SRV o nome bolbro.barbucha.local
, mas não consegue resolver seu IP.
$ KRB5_TRACE=/dev/stdout kinit test
[4841] 1389479680.105645: Getting initial credentials for [email protected]
[4841] 1389479680.106009: Sending request (172 bytes) to BARBUCHA.LOCAL
[4841] 1389479680.115312: Resolving hostname bolbro.barbucha.local.
[4841] 1389479690.122000: Resolving hostname bolbro.barbucha.local.
kinit: Cannot contact any KDC for realm 'BARBUCHA.LOCAL' while getting initial credentials
Mas, se eu alterar o conteúdo do arquivo /etc/krb5.conf
sem alterar nada no lado do servidor de:
[libdefaults]
default_realm = BARBUCHA.LOCAL
dns_lookup_realm = false
dns_lookup_kdc = true
para:
[libdefaults]
default_realm = BARBUCHA.LOCAL
forwardable = true
proxiable = true
dns_lookup_kdc = true
[realms]
BARBUCHA.LOCAL = {
kdc = bolbro.barbucha.local
}
... então funciona - endereço IP é resolvido. O leigo se maravilha com essa maravilha, o especialista fica surpreso. Como é possível que tenha resolvido o nome corretamente?
$ KRB5_TRACE=/dev/stdout kinit test
[4881] 1389479960.11821: Getting initial credentials for [email protected]
[4881] 1389479960.12298: Sending request (172 bytes) to BARBUCHA.LOCAL
[4881] 1389479960.12412: Resolving hostname bolbro.barbucha.local
[4881] 1389479960.12828: Sending initial UDP request to dgram 10.0.0.3:88
[4881] 1389479960.17680: Received answer from dgram 10.0.0.3:88
[4881] 1389479960.25280: Response was not from master KDC
[4881] 1389479960.25313: Received error from KDC: -1765328359/Additional pre-authentication required
[4881] 1389479960.25358: Processing preauth types: 16, 15, 2, 11, 19
[4881] 1389479960.25370: Selected etype info: etype rc4-hmac, salt "", params ""
Password for [email protected]:
Além disso: O tcpdump
disse que o registro SRV foi resolvido até o endereço IP 10.0.0.3, mas kinit
não o usou.
Acho que há um bug em algum lugar, mas não consigo me tornar conhecido, se estiver do lado do servidor ou do cliente. Eu não sei também, se é uma questão de DNS ou Kerberos. Eu estive pesquisando há muito tempo. Há muitas razões, mas essa situação é uma combinação especial de mais estados de erro.
No entanto, seria horrível descobrir isso. Eu apreciarei qualquer sugestão.