Kerberos:UPN和SPN之间的区别

时间:2013-08-14 14:15:09

标签: kerberos samba gssapi spn

我现在正在使用GSSAPI对跨平台应用程序进行攻击。 虽然我不清楚UPN和SPN之间的区别。

开发环境是CentOS 6.4上的Samba4 AD DC服务器,Windows服务器2008 R2是域中的成员盒,例如EXAMPLE.COM(您可能很好奇为什么不直接使用Win2008作为DC。如前所述,该应用程序是跨平台的,我现在正在测试此设置。正常的Win DC-Linux MEM设置工作正常。)。 我创建了一个新用户foobar:users来运行该应用程序。 当我使用foobar@EXAMPLE.COM(即UPN)来验证针对Kerberos的应用程序时,我一直在接收

  

Kerberos:Principal可能不会充当服务器错误

在Samba maillist上thread之后,我想我应该为UPN创建一个服务主体名称app/dc.example.com samba-tool

samba-tool spn add app/dc.example.com foobar

这次我会收到另一个错误

  

Samba4 KDC - 在hdb中找不到此类条目

我的问题是UPN和SPN之间的区别是什么? 截至samba-tool spn list foobar,它表示foobar servicePrincipalName app/dc.example.com。 我如何将UPN与SPN关联起来?

非常感谢。

1 个答案:

答案 0 :(得分:10)

简单地说,

  • UPN:执行客户端请求某个服务的实体。实体可以是人或机器。见here
  • SPN:处理特定服务请求的实体,例如HTTP,LDAP,SSH等。仅限机器。见here

UPN检索SPN的服务票证以使用该实际服务。

如果您的samba-tool调用您的请求samba将SPN app/dc.example.com注册到UPN foobar。由于您尚未提供SPN和UPN的域,因此Samba将采用此调用执行的机器的默认域。在Windows术语中,您通常将SPN绑定到计算机UPN。总是:<name>$@<REALM>。请注意美元符号。