在基于 Windows 2000 的服务器群集上的 Kerberos 支持

文章翻译 文章翻译
文章编号: 235529 - 查看本文应用于的产品
展开全部 | 关闭全部

本文内容

概要

本文介绍了 Kerberos 身份验证支持基于 Windows 2000 的服务器群集的 Windows 2000 Service Pack 3 (SP3) 中已添加的。与 Windows 2000 的版本早于 SP3,群集服务不会在 Active Directory 中发布虚拟服务器的计算机的对象。这意味着虚拟服务器进行身份验证只能通过使用 NTLM 或 NTLM 版本 2。Windows 2000 SP3,您可以配置虚拟服务器,以允许使用 Kerberos 身份验证协议进行身份验证的客户端。 如果启用此计算机对象用于每个相应的网络名称资源。

在服务器群集上不支持的网络名称资源依赖 Microsoft Exchange 2000 的 Kerberos 身份验证。 Exchange 2000 不测试群集虚拟服务器将支持 Kerberos 身份验证将假定条件下,此配置可能不能正常工作。未来版本的 Exchange Server 可能会利用 Kerberos 身份验证对于服务器群集。

要点: 注意 Kerberos SQL Server 群集中的支持。

有关 Windows 2000 SP3 的 Kerberos 身份验证的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
302389群集网络名称资源,在 Windows Server 2003 中的属性的说明
有关如何在 SQL Server 中使用 Kerberos 身份验证的详细信息单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
319723如何在 SQL Server 中使用 Kerberos 身份验证

更多信息

以下各节介绍如何打开 Kerberos 支持,并描述了 Windows 2000 SP3 服务器群集和 Kerberos 出现的一些已知的问题。

如何打开一个现有群集具有 SP3 安装上的 Kerberos 支持

若要启用 Kerberos,以便为现有的虚拟服务器创建一个计算机对象:

注意此部分中"网络名称群集资源"引用的网络名称群集的资源名称显示在网络名称群集资源的属性中的 常规 选项卡上。
  1. 在 $ 群集中的每个节点上验证群集服务帐户已被授予在本地节点上的右"作为操作系统的一部分"用户。

    要这样做按照"群集服务帐户做不具有正确用户权限在本地节点"部分中的以下 Microsoft 知识库文章中所述:
    307532如何解决群集服务帐户时它修改计算机对象
  2. 验证群集服务帐户在 Active Directory 中具有适当的权限。这样做按照下面的 Microsoft 知识库文章:
    302389群集网络名称资源,在 Windows Server 2003 中的属性的说明
  3. 将 SP3 应用到群集中的所有节点。
  4. 启动群集管理器,选择您要打开 Kerberos 支持相应的网络名称资源,然后使该资源脱机。
  5. 打开命令提示窗口上的一个群集节点,然后键入以下命令:
    群集 res 网络名称资源 /priv requirekerberos = 1:dword
  6. 从群集管理员将网络名称资源联机。
您还可以使用此过程将打开 RequireDNS 属性。若要这样做替换为 RequireDNSRequireKerberos 指定的位置。如果您使用 RequireDNS 属性,您可以请确保该资源进入联机仅当虚拟服务器的 DNS 记录注册成功。如果 RequireDNS 属性设置为 1,DNS HOST (A) 记录,为虚拟服务器都必须进行注册。如果它不会仅联机使用网络名称资源。如果 DNS 服务器接受动态更新,但不是会更新该记录这种现象被视为失败。如果 DNS 服务器不接受动态更新 (旧版本的 DNS),或者没有与该资源的关联的网络相关联的任何 DNS 服务器网络名称资源仍恢复联机。

通常,如果网络名称资源不会联机打开后 Kerberos 支持,群集服务帐户可能没有到 Active Directory 的正确权限。如果该资源不会联机,请参阅下面的 Microsoft 知识库文章,有关故障排除步骤以及如何验证群集服务帐户具有活动目录的写访问权限的详细信息:

307532如何解决群集服务帐户时它修改计算机对象
注:如果此特定安装的 Windows 2000 是从 Microsoft Windows NT 4.0 的升级,查看在"群集服务帐户做不具有正确用户权限上本地节点"Q307532 中。Windows NT 4.0 不授予群集服务帐户"作为操作系统的一部分"的权限。因此,如果升级 Windows 2000 不会授予此权限。 为新的 Kerberos 功能,以正常工作,必须应用此权限。在 Windows 2000 的服务器群集的新安装群集服务帐户此权限授予群集安装的过程中。

如何在您应用 SP3 之前设置 RequireKerberos 属性

如果升级和 $ 如果您有一个节点升级到 SP3 之前 RequireKerberos 属性设置,客户端计算机可能会遇到对群集资源的身份验证问题,而在群集中节点的其余部分将被升级到 SP3。 在下列情况下,就会发生此现象:
  • RequireKerberos 属性设置为 1 上的网络名称资源。
  • 群集节点升级到 SP3。
  • 网络名称资源放在已升级的节点将导致在 Active Directory 中创建一个计算机对象上。
  • 网络名称资源移动到非 SP3 群集节点或者因为已升级的节点失败或资源的组已被移动。
  • 通过使用网络名称资源连接到群集节点的客户端的计算机对象的存在由于接收到虚拟服务器的 Kerberos 票证。
  • 宿主在非 SP3 群集节点的网络名称资源不支持 Kerberos 身份验证和客户端不能进行身份验证。
如果在您应用 SP3 之前,您有 RequireKerberos 属性设置为 1,则必须设置属性值类型到 DWORD。如果您不这样做,您安装 SP3,网络名称资源不会不上网。若要恢复这种情况下从,您可以删除网络名称资源,然后重新创建它,但是,如果出现此问题的与群集名称资源,则必须重新安装群集。

若要在升级到 SP3 之前,请设置 RequireKerberos 属性,运行以下命令:
群集 res 网络名称资源 /priv requirekerberos = 1:dword
要验证 RequireKerberos 属性是一个 DWORD 值,运行以下命令:
群集网络名称资源 /priv res
如果"D"会显示在最左侧列中该 RequireKerberos = 1 此属性的属性是一个 DWORD 值。 验证该属性之后,请按照本文"如何以打开 Kerberos 支持上一现有群集的具有 SP3 安装"一节中说明打开 Kerberos 支持。

如何重命名虚拟服务器具有打开的情况下的 Kerberos 支持

若要重命名虚拟服务器启用 Kerberos 身份验证时,您可以将介绍这两种方法之一本节中使用。 如果您更改网络上的群集管理器中网络名称资源名称资源将失败,因为计算机对象将不会被重命名。但是,基于 Windows Server 2003 的服务器群集可以更改相应的计算机对象的名称。

您可能会发现方法 1 是易于完成,但是此方法假定没有子对象都与在 Active Directory 中的计算机对象相关联。消息队列 (也称为 MSMQ) 是一个程序,它创建子对象的一个示例。如果您使用方法 2,则必须使用 ADSIEdit.msc,包括在 Windows 2000 中。

方法 1

如果您执行此方法时,您又要暂时取消 Kerberos 支持为虚拟服务器、 删除相应的计算机对象,然后打开并重新创建计算机对象:
  1. 使用 $ 群集管理器采取相应的网络名称资源脱机。
  2. 打开命令提示窗口上的群集节点,并键入以下命令之一:
    群集 res 网络名称资源 /priv requirekerberos = 0
  3. 启动 Active Directory 用户和计算机,然后定位到计算机的组织单位。
  4. 视图 菜单上单击 用户、 组,和作为容器的计算机,然后验证不存在任何子对象。

    : 如果存在子对象,请与程序供应商联系,让这些子对象存在,然后让他们来验证是否有一种虚拟服务器的计算机对象已被删除并重新创建后重新创建子对象的方法。如果您不能重新创建子对象,使用方法 2。
  5. 从 Active Directory 用户和计算机中删除相应的计算机对象的网络名称资源。
  6. 仍处于脱机状态相应的网络名称资源时使用群集管理器显示参数页的网络名称资源,然后更改虚拟服务器的名称。
  7. 打开命令提示窗口上的群集节点,并键入以下命令之一:
    群集 res 网络名称资源 /priv requirekerberos = 1
  8. 使用 $ 群集管理器使网络名称资源联机。

    注意Microsoft 只支持运行 Microsoft 分布式事务协调器 (MSDTC) 群集节点上为群集资源。Microsoft 不建议在群集上,在独立模式下运行 MSDTC。Microsoft 不支持此配置。当您在非群集资源在 Microsoft 群集服务 (MSCS) 群集中使用 MSDTC 时,交易记录可能被孤立。 这将导致数据损坏发生群集故障转移。

方法 2

如果您执行此方法,使用 ADSIEdit.msc 重命名计算机对象在 Active Directory 中的,以使其符合网络名称资源在群集管理器中。在任何成员服务器或域控制器上安装 ADSIEdit.msc。若要安装 ADSIEdit 支持中运行安装程序在 Windows 2000 安装光盘上的文件夹。
  1. 启动群集管理员,然后使相应的网络名称资源脱机。
  2. 在 $ 群集管理中显示参数页的网络名称资源,然后更改虚拟服务器的名称。
  3. 启动 ADSIEdit.msc、 展开域,然后找到计算机的组织单位。
  4. 用鼠标右键单击相应的网络名称资源的计算机对象,然后单击 重命名
  5. 重命名的对象,通用名称 (也就是 CN),然后按 ENTER 键。
  6. 用鼠标右键单击相应的网络名称资源的计算机对象上,然后单击 属性
  7. 选择要查看属性 框单击 显示名称
  8. 选择要查看的属性 框中,单击 两者
  9. 编辑属性 行上键入新的虚拟服务器的名称。
  10. 重复步骤 5 到 7。 DNSHostName (在完整的 DNS 格式) 和 SamAccountName (它与 $ 追加)
  11. 在群集管理使网络名称资源联机。

    注意: 若要重命名虚拟服务器的计算机对象使用 ADSIEdit 后,您可能不得不等待复制完成的所有域控制器接收所做的更改。

您必须安装高级加密包

您必须在群集中的所有节点上安装 128 位高加密包。有关高加密包,并为下载高加密包,请参阅下面的 Microsoft 网站的详细信息:
http://www.microsoft.com/downloads/details.aspx?FamilyID=c10925a0-ac66-4c44-b5c3-9dcab4da1c63
如果没有安装高加密包,您不能使启用 Kerberos 的网络名称资源联机,群集诊断日志 (Cluster.log) 中记录以下数据:
网络名称 VirtualServerName 0000032c.00000628::2001/11/29-22:33:22.703: 无法获取加密上下文进行加密。状态 2148073497。
网络名称 VirtualServerName 0000032c.00000628::2001/11/29-22:33:22.703: 无法将资源数据存储。状态 2148073497
2148073497 十进制状态值转换为该 0x80090019 指示 NTE_KEYSET_NOT_DEF 的十六进制值。

多个网络名称资源不恢复联机

如果您有多个网络名称资源中的 Kerberos 支持处于打开状态,并且您尝试在同一时间使其联机可能会出现争用条件和网络名称资源的一些最初可能会失败。 因为默认情况下重新启动该资源,您可能不会注意到的网络名称资源已失败。 如果发生此问题,群集诊断日志中记录以下数据:
未能启用状态 C0000061 (STATUS_PRIVILEGE_NOT_HELD) 的 TCB 权限
未能将凭据添加到 LSA 中,为计算机帐户群集状态 1314
: 此错误是相同的群集服务帐户不具有"作为操作系统的一部分"权限的情况下发生的错误。按下面的 Microsoft 知识库文章,以验证已分配正确的权限中描述的步骤操作:

307532如何解决群集服务帐户时它修改计算机对象

消息队列服务器群集和 Windows 2000 SP3

从 Windows 2000 SP1 和 SP2 升级

如果您升级到 SP3 的消息队列服务器群集,自动命名 Msmqprop.exe 一个单独的实用程序将运行在升级过程中。此实用程序会自动扫描群集并将 RequireKerberos 属性设置为 1,消息队列资源依赖的任何网络名称资源上。若要运行的 Msmqprop.exe,安装在 Windows 2000 上的群集服务必须运行 SP1 或 SP2 (不 RTM)。Msmqprop.exe Windows_folder 文件夹名为 Msmqprop.log,指示中的所有运行的操作中创建一个日志文件。

计算机对象的权限

Service Pack 3 的 Windows 2000 的消息队列服务器群集要求在域中的权限。群集服务帐户必须具有创建子对象权限才能为虚拟服务器的计算机对象。此额外的权限是必需的因为消息队列创建子对象下的虚拟服务器的计算机对象。若要将这些权限请在域控制器上执行以下步骤:
  1. 从管理工具文件夹中启动 Active Directory 用户和计算机。
  2. 视图 菜单上单击 高级功能
  3. 展开域,然后双击消息队列将取决于的虚拟服务器的计算机对象上。
  4. 单击 安全 选项卡,然后单击 添加
  5. 展开域,双击群集的服务帐户,然后单击 确定
  6. 单击群集服务帐户,单击以选中在 创建所有子对象 复选框,然后单击 确定
群集服务帐户现在有这样的消息队列对象创建虚拟服务器计算机对象上创建子对象的权限。如果存在多个域控制器必须等待复制完成,使更改应用到所有域控制器。

消息队列服务器群集的新安装

若要使用 Kerberos 创建消息队列服务器群集通过运行 Windows 2000 SP3 的身份验证:
  1. 在 $ 群集中的所有节点上安装 Windows 2000。

    为要执行此任务,请访问下面的 Microsoft 网站的逐步式指南:
    http://technet.microsoft.com/en-us/library/Bb727114.aspx
  2. 关闭除 Node_A 以外的所有节点。
  3. Node_A 共享的磁盘的配置。
  4. 安装和配置上 Node_A Microsoft 群集服务和 $ 消息队列使用控制面板。

    注:安装消息队列通过使用添加/删除程序工具,但不创建消息队列群集资源对于消息队列而言这一次。
  5. 打开群集中其他节点。
  6. 使用控制面板来安装和配置在群集中其余节点上的 Microsoft 群集服务和 $ 消息队列

    : 从 Microsoft 群集服务加入现有群集和安装消息队列,但不要使这一次的消息队列的消息队列群集资源。
  7. 将 SP3 应用到 Node_A,然后重新启动计算机。

    已拥有 Node_A 的任何组将无法在群集中的另一个节点。
  8. 将 SP3 应用到群集中的所有其他节点。
  9. 运行 Comclust 来配置 Microsoft 分布式事务协调器 (MSDTC) 资源在群集上的。 有关如何使用 Comclust 的详细信息单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
    243204在 Windows 2000 群集服务器的 Microsoft 分布式事务协调器 (MSDTC) 恢复技术
  10. 重命名现有的组 (而不是群集组中) 包含磁盘资源以适当的名称 (例如 Message Queuing Group
  11. Message Queuing Group,创建 IP 资源和网络名称资源 (Message Queuing Cluster Name),然后将其保留脱机。
  12. Node_A 上一个命令提示符处运行以下命令:
    群集 res"消息队列群集名称"/priv requirekerberos = 1:dword
  13. 验证已正确设置 RequireKerberos 并且是一个 DWORD 值。下面的命令从命令提示符的这样做:
    群集 res"消息队列群集名称"/priv
    如果"D"会显示在最左侧列中该 RequireKerberos = 1,此属性的属性是一个 DWORD 值。
  14. 将于 Node_AMessage Queuing Group 联机。

    注:如果 Message Queuing Cluster Name 不会联机,查看以下 Microsoft 知识库文章中的故障排除步骤:
    302389群集网络名称资源,在 Windows Server 2003 中的属性的说明
    307532如何解决群集服务帐户时它修改计算机对象
  15. 启动 Active Directory 用户和计算机,然后确认 Message Queuing Cluster Name 资源已创建的计算机对象。
  16. 移动 Message Queuing Group 可在 $ 群集中的所有节点以验证该 Kerberos 支持正常运行的所有节点上。
  17. 按照本文的"权限上计算机对象"部分中提供适当的权限来创建消息队列对象的群集服务帐户。
  18. 在 $ Message Queuing Group,中创建消息队列资源,然后将此资源联机。
  19. Message Queuing Group 移动到以验证消息队列资源运行在群集中的所有节点上群集中的所有节点。

文件复制服务和服务器群集

文件复制服务 (FRS) 不会复制与在虚拟服务器的计算机对象下一个服务器群集上的文件共享。FRS 服务仅查找节点的计算机对象下的订阅信息并不会扫描虚拟服务器的计算机对象。分布式文件系统 (DFS) 使用 FRS 复制多个服务器之间的数据,启用复制策略时。如果 DFS 链接,使用复制策略是一个虚拟服务器,数据不与任何其他伙伴进行复制。您可能不得不使用复制数据的另一种方法 (例如对于文件的副本脚本)。

Windows 安装程序程序包是否立即使用组策略的计算机分配的工时

在早期版本的 Windows 2000 中,因为接收软件包的计算机帐户仅通过使用 Kerberos 和不是 NTLM 身份验证,不能部署是存储在服务器群集文件共享的 Windows 安装程序包。在 Windows 2000 SP3,将 RequireKerberos 属性值设置为 1 的文件共享的网络名称资源如果资源是依存于,通过使用组策略部署 Windows 安装程序。在"如何以打开 Kerberos 支持上一现有群集的具有 SP3 安装"部分在本文中有关如何启用 Kerberos 的详细信息请参阅支持。
如何关闭对虚拟服务器的 Kerberos 支持
如果您遇到后启用 Kerberos 身份验证问题支持为虚拟服务器,您可以关闭该支持。要关闭 Kerberos 支持,您必须手动删除相应的计算机对象。
  1. 启动群集管理器,选择您要关闭 Kerberos 支持相应的网络名称资源,然后使该资源脱机。
  2. 打开命令提示窗口上的一个群集节点,然后键入以下命令:
    群集 res 网络名称资源 /priv requirekerberos = 0
  3. 启动 Active Directory 用户和计算机,并删除相应的计算机对象。
  4. 从群集管理员将网络名称资源联机。

更改与已启用 Kerberos 的域

如果试图将域启用了 Kerberos 后,群集节点是成员的更改网络名称将无法联机。 若要解决此问题,设置 RequireKerberos = 0 到新域中的一次使其联机,然后设置 RequireKerberos = 1,以便群集服务将在新域中创建一个新的计算机对象。您可能需要在 DNS 中删除并验证更新它。

有关更改群集节点的域的一般信息单击下面文章编号,以查看 Microsoft 知识库中相应的文章:
269196如何将 Windows NT 4.0 群集服务器从一个域移动到另一个域

参考

有关详细的信息请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
307532如何解决群集服务帐户时它修改计算机对象
302389群集网络名称资源,在 Windows Server 2003 中的属性的说明
303121如何安装 Microsoft 群集服务器上的 BizTalk 2000
256975如何安装和配置 Windows 2000 群集上的消息队列

属性

文章编号: 235529 - 最后修改: 2007年12月4日 - 修订: 11.4
这篇文章中的信息适用于:
  • Microsoft Windows 2000 Advanced Server SP3
  • Microsoft Windows 2000 Service Pack 3
关键字:?
kbmt kbproductlink kbclustering kbinfo kboswin2000fix kbwin2000sp3fix kbhotfixserver KB235529 KbMtzh
机器翻译
注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。
点击这里察看该文章的英文版: 235529
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。

提供反馈

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com