NetApp 错误:STATUS_NOLOGON_WORKSTATION_TRUST_ACCOUNT

Sob*_*que 7 windows kerberos netapp ntlm

自从在桌面上全站升级到 Windows 7 后,我开始遇到病毒检查问题。特别是 - 在(文件管理器托管的)CIFS 共享上执行重命名操作时。病毒检查程序似乎在文件管理器上触发一组消息:

[filerB: auth.trace.authenticateUser.loginTraceIP:info]: AUTH: Login attempt by user server-wk8-r2$ of domain MYDOMAIN from client machine 10.1.1.20 (server-wk8-r2).
[filerB: auth.dc.trace.DCConnection.statusMsg:info]: AUTH: TraceDC- attempting authentication with domain controller \\MYDC.
[filerB: auth.trace.authenticateUser.loginRejected:info]: AUTH: Login attempt by user rejected by the domain controller with error 0xc0000199: STATUS_NOLOGON_WORKSTATION_TRUST_ACCOUNT.
[filerB: auth.trace.authenticateUser.loginTraceMsg:info]: AUTH: Delaying the response by 5 seconds due to continuous failed login attempts by user server-wk8-r2$ of domain MYDOMAIN from client machine 10.1.1.20.
Run Code Online (Sandbox Code Playgroud)

这似乎是专门在 a 上触发的,rename所以我们认为正在发生的是病毒检查程序正在查看“新”文件,并尝试进行访问扫描。病毒检查程序 - 以前作为 LocalSystem 运行并因此发送null身份验证请求,现在看起来很像 DOS 攻击,并导致文件管理器暂时列入黑名单。在大多数情况下,这 5 秒锁定每个“访问尝试”是一个小麻烦,对于某些操作来说确实非常重要 - 例如大文件传输,其中每个文件都需要 5 秒

经过一番挖掘,这似乎与 NLTM 身份验证有关:

Symptoms

Error message:

System error 1808 has occurred.
The account used is a computer account. Use your global user account or local user     account to access this server.

A packet trace of the failure will show the error as:

STATUS_NOLOGON_WORKSTATION_TRUST_ACCOUNT (0xC0000199)

Cause

Microsoft has changed the functionality of how a Local System account identifies itself
during NTLM authentication.  This only impacts NTLM authentication.  It does not impact
Kerberos Authentication.

Solution

On the host, please set the following group policy entry and reboot the host.
Network Security: Allow Local System to use computer identity for NTLM: Disabled
Defining this group policy makes Windows Server 2008 R2 and Windows 7 function like Windows Server 2008 SP1.
Run Code Online (Sandbox Code Playgroud)

所以我们现在有几个不是特别好的解决方法 - 一个是更改此安全选项。一种是禁用病毒检查,或以其他方式免除部分基础架构。

这就是我向 ServerFault 寻求帮助的地方 - 最好的前进方式是什么?我缺乏 Windows 经验,无法确定我所看到的内容。

我不完全确定为什么 NTLM 首先是这张图片的一部分 - 我以为我们正在使用 Kerberos 身份验证。我不知道如何开始诊断或解决这个问题。(我们要跨域 - 工作站计算机帐户位于我的文件管理器的单独 AD 和 DNS 域中。但是,普通用户身份验证工作正常。)

如果做不到这一点,任何人都可以建议其他方面的调查吗?我想避免站点范围的安全选项更改,或者如果我这样做,我需要能够提供详细的推理。同样 - 禁用病毒检查是一种短期解决方法,应用排除可能会有所帮助......但我宁愿不这样做,也不认为这解决了潜在的问题。

编辑:AD ldap 中的文件管理器具有以下 SPN:

nfs/host.fully.qualified.domain
nfs/host
HOST/host.fully.qualified.domain
HOST/host
Run Code Online (Sandbox Code Playgroud)

(对不起,必须混淆那些)。

是不是没有“cifs/host.fully.qualified.domain”就行不通?(或其他一些 SPN?)

编辑:作为我一直在做的搜索的一部分,我发现:http : //itwanderer.wordpress.com/2011/04/14/tread-lightly-kerberos-encryption-types/

这表明在 Win7/2008R2 中默认禁用了几种加密类型。这可能是相关的,因为我们在使用 Keberized NFSv4 时肯定遇到过类似的问题。有一个隐藏的选项可以帮助一些未来的 Keberos 用户:options nfs.rpcsec.trace on(虽然这还没有给我任何东西,所以可能只是 NFS 特定的)。

编辑:进一步挖掘让我将其追溯到跨域身份验证。它看上去像(在一个域)是得不到的Kerberos门票等领域,其中我的NetApp文件服务器是CIFS加入我的Windows 7工作站。我已经针对独立服务器(Win2003 和 Win2008)单独完成了此操作,并且也没有获得这些服务器的 Kerberos 票证。

这意味着我认为Kerberos 可能已损坏,但我不知道如何进一步排除故障。

编辑:进一步更新:看起来这可能是因为 Kerberos 票证没有被跨域发出。然后这会触发 NTLM 回退,然后遇到这个问题(从 Windows 7 开始)。第一个停靠点是调查事情的 Kerberos 方面,但在这两种情况下,我们都没有任何迹象表明 Filer 是根本原因。因此 - 作为存储工程师 - 它不在我的手中。

但是,如果有人能指出我对跨越两个 Windows AD 域(Kerberos 领域)的 Kerberos 进行故障排除的方向,那么我将不胜感激。

我们将考虑解决的选项:

  • 通过 GPO 修改所有工作站上的策略选项(如上)。
  • 与 AV 供应商讨论重命名触发扫描。
  • 与 AV 供应商讨论将 AV 作为服务帐户运行。
  • 调查 Kerberos 身份验证(为什么它不起作用,是否应该起作用)。

Sob*_*que 3

我已经完成了这件事,现在知道为什么会发生这种情况了。

总之:

  • 自 Windows 7/2008 起,客户端计算机上“LocalSystem”的默认行为发生了变化。在使用“空”登录之前,它使用 NTLM 的计算机帐户。

  • 因为我们要在两个 AD 林之间移动,所以没有使用 Kerberos。这是设计使然。http://technet.microsoft.com/en-us/library/cc960648.aspx“Kerberos身份验证在林中的域之间使用透明传递信任,但无法在不同林中的域之间进行身份验证”

    • Sophos 正在扫描由重命名触发的“访问时”文件。出于安全策略的原因,这包括网络驱动器。

    • 由于 Sophos 作为本地系统运行,因此它通过 NTLM 向文件管理器提供计算机帐户。然后,该帐户将被拒绝,并显示 STATUS_NOLOGON_WORKSTATION_TRUST_ACCOUNT,并且重试 10 次后,文件管理器会触发锁定。

    • 由于此锁定,后续病毒扫描尝试每次尝试将停滞 5 秒。这是我们问题的根源,因为我们的进程复制并重命名了数百个文件,并且在第 10 个文件之后,每个文件将花费 5 秒。

这给我们留下了以下解决方案:

  • 修改上述安全策略选项:网络安全:允许本地系统将计算机身份用于 NTLM:已禁用

    • 在网络驱动器的病毒检查程序中应用排除项

    • 将单独的域合并到同一个林中,以便 Kerberos 起作用。(此处概述了另一个选项:http ://xitnotes.wordpress.com/2012/03/29/kerberos-in-an-active-directory-forest-trust- vs-external-trust/涉及升级域之间的关系,以便 Kerberos 再次工作。

    • 使用 vfilers 和 CIF 将其加入另一个域。

    • 文件管理器上还有一个选项可以在锁定发生之前增加重试次数 - 这是一个隐藏选项,而且我没有方便的精确语法。