我试图在我所在的公司为Kubuntu12.04 Linux工作站设置Kerberos登录支持(Windows域提供kerberos)。
它几乎完全工作,但我不能让kerberos同时处理机器登录(通过kdm)和ssh。问题似乎是kdm检测主机的完全限定域为hostname.domain。ssh将完全限定的域检测为hostname.domain (注意没有尾随)。
缺乏或预感到。在kerberos请求中使用的域的末尾,只要出现“kerberos数据库中找不到的服务器”错误,就足以使票证请求失败。如果我将/etc/host更新为具有完全限定的主机名为hostname.domain。并使用samba登录加入域,使用kerberos登录正确,但ssh登录失败。如果我更新/etc/ host使主机成为hostname.domain,那么使用kerberos进行ssh登录就可以了,但是kdm登录失败了。
我有点不知所措,不知道为什么这两家服务会以不同的方式检测完全合格的域名--我做了大量搜索,没有发现任何其他有这个问题的人,也没有任何选项来强迫其中一家服务以不同的方式检测他们的域名。
技术细节
使用Kubuntu12.04是我无法控制的技术要求,因此升级到以后的发行版在这个阶段并不是一种选择。
pam_krb5被用来通过pam提供kerberos身份验证,而不是windows dns (在其他基础设施的进一步工作完成之前不能切换dns服务器),所以使用servers连接到域的主要细节来自/etc/host,看起来类似于
127.0.0.1 hostname.domain. hostname localhost(不过,使用中的unix dns服务器确实为主机提供了正确的正向和反向dns条目)
/etc/krb5.conf (主要是发行版默认值,输入了域详细信息和服务器)
[libdefaults]
default_realm = DOMAIN
krb4_config = /etc/krb.conf
krb4_realms = /etc/krb.realms
kdc_timesync = 1
ccache_type = 4
forwardable = true
proxiable = true
# samba 3 didn't like the default enc type so overridden to ones it supported
default_tkt_enctypes = arcfour-hmac-md5 des3-hmac-sha1 des-cbc-crc
default_tgs_enctypes = arcfour-hmac-md5 des3-hmac-sha1 des-cbc-crc
[realms]
DOMAIN = {
kdc = dc01.domain
kdc = dc02.domain
admin_server = dc01.domain
}
[domain_realm]
.domain = DOMAIN
[login]
krb4_convert = true
krb4_get_tickets = false/etc/samba/smb.conf (仅用于加入域)
[global]
security = ads
realm = WETAFX.CO.NZ
workgroup = WETAFX.CO.NZ
kerberos method = secrets and keytab
client signing = yes
client use spnego = yes
server string = %h server (Samba, Ubuntu)
dns proxy = no
log file = /var/log/samba/log.%m
max log size = 1000
syslog = 0
panic action = /usr/share/samba/panic-action %dpam.d/etc/pan.d/kdm只包含具有标准pam_krb5.so条目的公共- pam文件,如
auth sufficient pam_krb5.so minimum_uid=1000,它基本上是直接从pam_krb5.conf的手册页面中获取的。
ssh配置具有
GSSAPIAuthentication yes其余的是标准的默认ubuntu配置文件。
感谢任何关于是什么导致服务之间检测到的完全限定域的不匹配的指针。
发布于 2015-09-29 19:38:08
我想我已经弄清楚了这是怎么回事。看起来,在主机与/不在一起之后,额外的信息保存在keytab文件中。在领域的尽头,这就是奇怪行为的来源。
一旦我删除了/etc/krb5.keytab并重新运行连接到域,它创建了一个新的keytab,该选项卡只有在配置了域名时才被设置过。在它的尽头。在这一点上,kdm和ssh都正确地与kerberos一起工作。
https://serverfault.com/questions/699866
复制相似问题