Hei*_*ert 8 ubuntu active-directory kerberos samba4
我按照Samba AD DC HOWTO在 ubuntu 14.04 上设置了一个 samba 4 活动目录。原则上一切正常,但我坚持使用 SPN 为 Web 应用程序运行 kerberos 身份验证。当我尝试跑步时
kinit -k -t keytabfile http/myserver.mycompany.com
Run Code Online (Sandbox Code Playgroud)
我总是得到一个
kinit: Client not found in Kerberos database while getting initial credentials
Run Code Online (Sandbox Code Playgroud)
到目前为止我已经检查过的内容:
我创建了服务帐户/SPNs/keytabs,如下所示:
samba-tool user create $ADS_USER $ADS_PW --userou=$USER_OU
samba-tool user setexpiry --noexpiry $ADS_USER
samba-tool spn add ${SERVICE_TYPE}/${SERVICE_HOST}.${MY_DOMAIN} $ADS_USER
samba-tool spn add ${SERVICE_TYPE}/${SERVICE_HOST} $ADS_USER
samba-tool spn list $ADS_USER
rm -f $MY_KEYTAB
samba-tool domain exportkeytab $MY_KEYTAB --principal=${SERVICE_TYPE}/${SERVICE_HOST}.${MY_DOMAIN}
samba-tool domain exportkeytab $MY_KEYTAB --principal=${SERVICE_TYPE}/${SERVICE_HOST}
Run Code Online (Sandbox Code Playgroud)
运行 klist -k -e $MY_KEYTAB 时,一切看起来都不错:
root@myhost:~# klist -ke ./test.keytab
Keytab name: FILE:./test.keytab
KVNO Principal
---- --------------------------------------------------------------------------
1 http/myserver.mycompany.com@MYCOMPANY.COM (des-cbc-crc)
1 http/myserver.mycompany.com@MYCOMPANY.COM (des-cbc-md5)
1 http/myserver.mycompany.com@MYCOMPANY.COM (arcfour-hmac)
1 http/myserver@MYCOMPANY.COM (des-cbc-crc)
1 http/myserver@MYCOMPANY.COM (des-cbc-md5)
1 http/myserver@MYCOMPANY.COM (arcfour-hmac)
Run Code Online (Sandbox Code Playgroud)
我迷路了,在谷歌研究了几个小时,不知道如何解决/修复“在 Kerberos 数据库中找不到客户端”错误。欢迎任何提示!
谢谢
我在客户端上的“/etc/krb5.conf”
[libdefaults]
debug = true
default_realm = MYCOMPANY.COM
dns_lookup_realm = false
dns_lookup_kdc = false
default_tkt_enctypes = rc4-hmac
default_tgs_enctypes = rc4-hmac
[realms]
MYCOMPANY.COM = {
kdc = dc01.mycompany.com
admin_server = dc01.mycompany.com
kpasswd_server = dc01.mycompany.com
#ktpasswd_server = dc01.mycompany.com
#admin_server = dc01.mycompany.com
}
[domain_realm]
.mycompany.com = MYCOMPANY.COM
mycompany.com = MYCOMPANY.COM
Run Code Online (Sandbox Code Playgroud)
在 dc 服务器上 /etc/samba/smb.conf
[global]
debug level = 1
syslog = 1
max log size = 0
workgroup = MYCOMPANY
realm = MYCOMPANY.COM
netbios name = DC01
server role = active directory domain controller
server string = MYCOMPANY domain controller
server role check:inhibit = yes
dns forwarder = 192.168.22.1
idmap_ldb:use rfc2307 = yes
Run Code Online (Sandbox Code Playgroud)
最后我明白了!
这
samba-tool spn add ...
Run Code Online (Sandbox Code Playgroud)
不会(重新)命名目录中的 UPN。我通过与 MS ADS 条目进行比较找到了它。因此,解决方法是在发出 exportkeytab 命令之前手动更改值:
在目标机器上
kinit -k -t http/myserver.mycompany.com
Run Code Online (Sandbox Code Playgroud)
没有任何抱怨的工作!希望这有助于其他人尝试使用 Samba4 设置 SSO ...
| 归档时间: |
|
| 查看次数: |
53039 次 |
| 最近记录: |