PowerScale:OneFS:如何在 Active Directory 中查找重复的服务主体名称 (SPN) 以防止 SMB 客户端向群集进行身份验证

摘要: 如何识别 Active Directory 中的重复服务主体名称,这可能会导致 Kerberos 身份验证失败。

本文适用于 本文不适用于 本文并非针对某种特定的产品。 本文并非包含所有产品版本。

症状



识别 Active Directory 域中的重复 SPN:

在对群集进行身份验证时,重复的 SPN 名称可能会导致服务帐户登录和客户端登录失败。 
 

重复的 SPN 可能会导致客户端尝试向错误的系统进行身份验证或具有错误的 Kerberos 密钥。
参考: http://technet.microsoft.com/en-us/library/cc772897%28v=ws.10%29.aspx

使用 SmartConnect 分区名称或别名进行身份验证的 SMB 客户端可能无法向群集共享进行身份验证。

在域控制器日志或“/var/log/lsassd.log”中, 以下消息可能指示存在重复的 SPN。
 

KDC_ERR_PRINCIPAL_NOT_UNIQUE  - Multiple entries in database

KRB_AP_ERR_MODIFIED   Message stream modified errors

Event ID 11 and/or Event ID 4 on Domain controllers can indicate duplicate SPNs.

原因

Active Directory 环境中的 SPN 配置不正确可能会导致重复。

解决方案

程序

有两个选项可用于查找重复的 SPN。Setspn 是一个命令行实用工具,LDP 是仅在 Windows Server 2003 及更高版本上可用的图形界面。

使用 setspn
 
Windows 7、8、Server 2008 和 2012 中的 Setspn。对于 Windows Server 2003,可以使用以下链接获取它: http://support.microsoft.com/kb/970536
在 Windows 命令行界面中,使用“setspn /?” 获取命令的其他选项。
使用“setspn -x”查找重复项,这会搜索整个林,在大型环境中可能需要一些时间来处理。
“setspn q”命令 按 SPN 名称进行查询,可能更适合较大的环境。

示例 1:
SPN “HOST/chomper.test.isilon.com” 注册到名为“isicluster1”的群集和名为“win2k1”的 Windows 服务器。
 

C:>setspn  -x
Checking domain DC=test,DC=isilon,DC=com
Processing Entry 0
HOST/chomper.test.isilon.com is registered on these accounts
                CN=isicluster1,CN=Computers,DC=test,DC=isilon,DC=com
                CN=win2k1,CN=Computers,DC=test,DC=isilon,DC=com
Found 1 group of duplicate SPNs.


  
示例 2:
在较大的环境中,使用setspn q <SPN>”或使用 LDP 进行查询,如下所示。
 

C:>setspn  -q HOST/chomper.test.isilon.com
Checking domain DC=test,DC=Isilon,DC=com
CN=isicluster1,CN=Computers,DC=test,DC=isilon,DC=com
                HOST/chomper.test.isilon.com
                HOST/isicluster1
                HOST/isicluster1.test.isilon.com
CN=win2k1,CN=Computers,DC=test,DC=isilon,DC=com
                HOST/chomper.test.isilon.com
                HOST/win2k1
                HOST/win2k1.test.isilon.com
 
Existing SPN found!

如果环境中的其他位置存在具有不同服务类标识符(如 CIFS)的 SPN,则不会找到带有“setspn -x”的 SPN。您可以通过运行通配符搜索来搜索它:

C:\>setspn -q */isilon
Checking domain DC=test,DC=Isilon,DC=com
CN=isicluster2,CN=Computers,DC=test,DC=isilon,DC=com
                cifs/chomper.test.isilon.com



使用 LDP: http://support.microsoft.com/kb/321044

  1. 单击“开始”,单击“运行”,键入 LDP,然后单击“确定”。
  2. 单击 连接,然后单击 连接
  3. 保留默认设置,然后单击 确定
    提醒:如果未收到预期结果,请使用全局编录端口 (3268) 而不是默认设置 (389) 尝试另一次搜索。
  4. 单击 连接,然后单击 绑定
  5. 保留默认设置,然后单击 确定
  6. 单击 查看,然后单击
  7. 树视图 对话框中,在 BaseDN 框中键入 DC=test,DC=isilon,DC=com
  8. 单击 浏览,然后单击 搜索
  9. 搜索 对话框中,在 BaseDN 框中键入 DC=test,DC=isilon,DC=com。
  10. 搜索对话框中,在筛选器框中键入 (serviceprincipalname=HOST/<sczonename>
  11. “属性 ”对话框中,键入 servicePrincipalName。
  12. “Scope”下,单击 “Subtree”。
  13. 单击 运行,然后关闭 搜索 对话框。
  14. 重复的 SPN 列出了两个指向两个不同 Dn 的条目
***Searching 
ldap_search_s(Id,  DC=test,DC=isilon,DC=com ,2,
    (serviceprincipalname=HOST/chomper.test.isilon.com) ,attrList, 0 &msg)
    Getting 2 entries:
Dn: CN=ISICLUSTER1,CN=Computers,DC=test,DC=isilon,DC=com
    servicePrincipalName (3): HOST/isicluster1; HOST/isicluster1.test.isilon.com;
      HOST/chomper.test.isilon.com
Dn: CN=WIN2K1,CN=Computers,DC=test,DC=isilon,DC=com
    servicePrincipalName (3): HOST/win2k1; HOST/win2k1.test.isilon.com;
      HOST/chomper.test.isilon.com


 
分辨率:
应从 Active Directory 域中删除“HOST/chomper.test.isilon.com”的 win2k1 重复条目。

对 Active Directory 域具有域管理员、企业管理员或指定域管理权限的用户可删除重复条目。
删除重复条目的命令是“setspn -D <spn><accountname>”。

 

 

C:>setspn  D HOST/chomper.test.isilon.com win2k1
Unregistering ServicePrincipalnames for CN=win2k1,CN=Computers,DC=test,DC=isilon,DC=com
                HOST/chomper.test.isilon.com
Updated object



上面的输出确认“HOST/chomper.test.isilon.com”已从计算机 win2k1 中注销。它现在仅注册到 ISICLUSTER1 计算机帐户。

其他信息

相关文章:

“如果服务主体名称 (SPN) 不正确或缺失,身份验证服务可能会失败,”89649
“OneFS:如何创建 SPN 帐户以允许使用 SmartConnect DNS 条目进行 Kerberos 身份验证“、”16528
“如何在 Microsoft Active Directory 环境中查看 SPN 列表16589
“SQL 客户端无法将文件从 Isilon 群集”批量插入“到 SQL 数据库”89574
“如何在 OneFS 5.5.x - 6.5.x 中启用 Active Directory CIFS 共享的 Mac OS X 单点登录 (SSO)“16675
”Isilon OneFS 7.1.0.0:SMB2 客户端无法使用 Kerberos 身份验证连接到群集,“174024
”OneFS:Kerberos 身份验证的服务主体名称“ 187999

受影响的产品

Isilon

产品

Isilon
文章属性
文章编号: 000032723
文章类型: Solution
上次修改时间: 23 2月 2026
版本:  6
从其他戴尔用户那里查找问题的答案
支持服务
检查您的设备是否在支持服务涵盖的范围内。