[ 
https://issues.apache.org/jira/browse/KUDU-2032?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16127859#comment-16127859
 ] 

Todd Lipcon commented on KUDU-2032:
-----------------------------------

Just dropping a few more notes from more reading I did today:

There are actually two relevant krb5 configs related to service name 
canonicalization: *dns_canonicalize_hostname* and *rdns*

- *dns_canonicalize_hostname* seems to be rarely changed from its default 
(true). If this is set, krb5 calls getaddrinfo(host) with AI_CANONNAME set, and 
then uses the returned 'canonhost' if set.
- *rdns* - if set, and the previous DNS query returned an address, then it does 
a reverse lookup using getnameinfo(), and if that succeeds, uses that instead 
to replace the above 'canonhost'.

The code is in the {{canon_hostname}} function in {{sn2princ.c}} file in the 
krb5 source.

> Kerberos authentication fails with rdns disabled in krb5.conf
> -------------------------------------------------------------
>
>                 Key: KUDU-2032
>                 URL: https://issues.apache.org/jira/browse/KUDU-2032
>             Project: Kudu
>          Issue Type: Bug
>          Components: security
>    Affects Versions: 1.3.1, 1.4.0
>            Reporter: Todd Lipcon
>            Priority: Critical
>
> Currently if 'rnds = false' is configured in krb5.conf, Kudu ends up using 
> the IP addresses of remote hosts instead of the hostnames. This means that it 
> will look for krb5 principals by IP, even if actual hostnames have been 
> passed instead.
> This prevents krb5 from working properly in most environments where 
> rdns=false is set.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to