与 Windows 服务器共享文件时拒绝访问,错误 3221225578

与 Windows 服务器共享文件时拒绝访问,错误 3221225578

我正在尝试访问服务器上的共享。出现凭证框,我输入了正确的用户名和密码,但访问被拒绝。

愚蠢的是,我可以远程桌面到服务器(使用相同的凭据),我可以检查安全访问被拒绝错误的事件日志:

Event Type: Failure Audit
Event Source:   Security
Event Category: Account Logon 
Event ID:   681
Date:       3/19/2011
Time:       11:54:39 PM
User:       NT AUTHORITY\SYSTEM
Computer:   STALWART
Description:
The logon to account: Administrator
 by: MICROSOFT_AUTHENTICATION_PACKAGE_V1_0
 from workstation: HARPAX
 failed. The error code was: 3221225578

Event Type: Failure Audit
Event Source:   Security
Event Category: Logon/Logoff 
Event ID:   529
Date:       3/19/2011
Time:       11:54:39 PM
User:       NT AUTHORITY\SYSTEM
Computer:   STALWART
Description:
Logon Failure:
    Reason:     Unknown user name or bad password
    User Name:  Administrator
    Domain:     stalwart
    Logon Type: 3
    Logon Process:  NtLmSsp 
    Authentication Package: NTLM
    Workstation Name:   HARPAX 

查找错误代码(3221225578),我得到一个Technet 上的文章

审计账户登录事件 作者:Randy Franklin Smith

...

表 1 - 事件 ID 681 的错误代码

Error Code  Reason for Logon Failure
3221225578  The username is correct, but the password is wrong.

这似乎表明用户名正确,但密码错误。

我在不同的用户帐户上尝试过多次密码,大写、小写,在用户名前加上和不加上前缀servername\username

我无法通过文件共享访问服务器,但是我通过 RDP 访问吗?

在此处输入图片描述


编辑:我尝试输入随机凭证(即用户名ramdom:),只是为了确保我尝试连接到正确的服务器。服务器上的事件日志显示尝试失败:

Event Type:   Failure Audit
Event Source: Security
Event Category:   Logon/Logoff 
Event ID: 529
Date:     3/20/2011
Time:     8:40:28 AM
User:     NT AUTHORITY\SYSTEM
Computer: STALWART
Description:
Logon Failure:
  Reason:     Unknown user name or bad password
  User Name:  random
  Domain:     HARPAX
  Logon Type: 3
  Logon Process:  NtLmSsp 
  Authentication Package: NTLM
  Workstation Name:   HARPAX

编辑:尝试所有可能LAN 管理器身份验证级别secpol.msc-> 安全设置 -> 本地策略 -> 安全选项 -> LAN 管理器身份验证级别):

  • 发送 LM 和 NTLM 响应:失败
  • 发送 LM 和 NTLM - 如果协商成功则使用 NTLMv2 会话安全:失败
  • 仅发送 NTLM 响应(默认):失败
  • 仅发送 NTLMv2 响应:失败
  • 仅发送 NTLMv2 响应\拒绝 LM:失败
  • 仅发送 NTMLv2 响应\拒绝 LM 和 NTLM:失败

(客户端:Windows 7。服务器:Windows 2000 Server)

答案1

我找到了问题所在,它与两台机器的时钟设置有关:

  • Client: 3/20/2011 1:28:17 ᴘᴍ
  • Server: 3/20/2011 1:28:17 ᴘᴍ

在外行人看来,两个时钟的读数似乎相同。协商协议有一个限制,要求所有时钟之间的时间差在 15 分钟以内。这些时钟相差一小时。这是因为涉及的操作系统:

  • 客户端:Windows 7
  • 服务器:Windows 2000 Server

而且由于 Windows 2000 Server 不再受支持,其夏令时开始日期不再有效。因此两台机器上的时间实际上是:

  • Client: 3/20/2011 1:28:17 ᴘᴍ EDT
  • Server: 3/20/2011 1:28:17 ᴘᴍ EST

这是因为客户端已经(正确地)切换到夏令时,当服务器仍然处于开启状态时标准时间。这意味着客户端机器时钟比服务器时钟快一个小时 - 因此两者无法进行身份验证。

通常情况下,当两个时钟相差超过 15 分钟时,您会收到一条消息警告您这一情况。在这种情况下,时钟是同步的,因此不会出现警告。

概括:3221225578,Windows 2000,夏令时

与此同时,为了让事情正常运转,我已将服务器时钟恢复为慢一个小时 - 并且我会让“自然” DST 切换赶上来 - 并且交易将再次在正确的时间开始发生。

答案2

3221225578 (0xC000006A) 身份验证失败代码可能有多种原因。其中一个原因是 LMCompatibilityLevel 设置不匹配。如果服务器的配置比工作站更严格,这就是症状之一。

另外,测试时要小心。如果您的工作站设置为允许/低值,则将其增加到高值可能会导致其在启动时出现蓝屏(如果 dc 也设置为低/允许值),并且您可能需要使用“最后一次正确的”启动菜单选项进行恢复。

史上最容易被误解的 Windows 安全设置
http://technet.microsoft.com/en-us/magazine/2006.08.securitywatch.aspx

相关内容