我有一台加入域的 Windows 10 计算机尝试通过 kerberos 对 ipa (4.4.0) 客户端 (centos 7.2) 进行身份验证,我可以使用用户/密码进行身份验证,然后使用 kinit 进行身份验证,但我似乎无法使用我机器上的 kerberos 票证进行身份验证.
ipaclients 可以通过 kerberos 对 windows 服务器 (winrm) 进行身份验证。
布局 example.org = 具有用户的受信任域 example.com = 系统的根域 ad.example.com = 系统的子域 ipa.example.com = FreeIPA 的领域
来自 [email protected] 的所有域的身份验证有效,用于 IIS Windows 身份验证之类的 kerberos 按预期工作,Winrm 使用 kerberos 在 windows 和 linux 上工作。我还没有使用 keytabs 和受信任的用户测试 apache 401。
debug1: 下一个认证方法: gssapi-with-mic debug1: Miscellaneous failure (see text) cannot find realm of host WIN10HOSTNAME
debug1:其他故障(见正文)无法找到主机 WIN10HOSTNAME 的领域
debug2:我们没有发送数据包,禁用方法
WIN10HOSTNAME = 主机名
我尝试过 MIT Kerberos,还尝试在 krb5.ini 文件(windows)中设置默认领域。我不太确定如何设置默认领域。
Windows 10 客户端 (mingw64)
ssh -V
OpenSSH_7.1p2,OpenSSL 1.0.2h 2016 年 5 月 3 日
klist
Current LogonId is 0:0x3a258
Cached Tickets: (4)
1 Client: jevans @ EXAMPLE.ORG
Server: krbtgt/AD.EXAMPLE.ORG @ EXAMPLE.COM
KerbTicket Encryption Type: RSADSI RC4-HMAC(NT)
Ticket Flags 0x40a50000 -forwardable renewable pre_authent ok_as_delegate name_canonicalize
Start Time: 1/26/2017 8:26:58 (local)
End Time: 1/26/2017 18:25:47 (local)
Renew Time: 1/26/2017 18:25:47 (local)
Session Key Type: RSADSI RC4-HMAC(NT)
Cache Flags: 0
Kdc Called: DC01.example.com
1 Client: jevans @ EXAMPLE.ORG
Server: krbtgt/EXAMPLE.COM @ EXAMPLE.ORG
KerbTicket Encryption Type: RSADSI RC4-HMAC(NT)
Ticket Flags 0x40a50000 -forwardable renewable pre_authent ok_as_delegate name_canonicalize
Start Time: 1/26/2017 8:26:58 (local)
End Time: 1/26/2017 18:25:47 (local)
Renew Time: 1/26/2017 18:25:47 (local)
Session Key Type: RSADSI RC4-HMAC(NT)
Cache Flags: 0
Kdc Called: DC01.example.org
2 Client: jevans @ EXAMPLE.ORG
Server: krbtgt/EXAMPLE.ORG @ EXAMPLE.ORG
KerbTicket Encryption Type: AES-256-CTS-HMAC-SHA1-96
Ticket Flags 0x40e10000 -forwardable renewable initial pre_authent name_canonicalize
Start Time: 1/26/2017 8:25:47 (local)
End Time: 1/26/2017 18:25:47 (local)
Renew Time: 1/26/2017 18:25:47 (local)
Session Key Type: AES-256-CTS-HMAC-SHA1-96
Cache Flags: 0x1 -PRIMARY
Kdc Called: DC01.example.org
3 Client: jevans @ EXAMPLE.ORG
Server: ldap/AD-DC01.AD.EXAMPLE.ORG/AD.EXAMPLE.ORG @ AD.EXAMPLE.ORG
KerbTicket Encryption Type: AES-256-CTS-HMAC-SHA1-96
Ticket Flags 0x40a50000 -forwardable renewable pre_authent ok_as_delegate name_canonicalize
Start Time: 1/26/2017 8:26:58 (local)
End Time: 1/26/2017 18:25:47 (local)
Renew Time: 1/26/2017 18:25:47 (local)
Session Key Type: AES-256-CTS-HMAC-SHA1-96
Cache Flags: 0
Kdc Called: AD-DC01.ad.example.com
Linux端点
ktutils
,然后read_kt /etc/krb5.keytab
,然后list
slot KVNO Principal
---- ---- ---------------------------------------------------------------------
1 1 host/[email protected]
2 1 host/[email protected]
3 1 host/[email protected]
4 1 host/[email protected]
5 1 host/[email protected]
6 1 host/[email protected]
7 1 host/[email protected]
8 1 host/[email protected]
9 1 host/[email protected]
10 1 host/[email protected]
11 1 host/[email protected]
12 1 host/[email protected]
通过为cygwin丢弃 mingw64使其工作。
mingw64 显然是为极简主义者设计的,并且缺少所需的 kerberos 包(在许多其他很棒的包中)
我不仅可以让 cygwin 进行 Kerberos 身份验证,还可以使用SSH 代理密钥