两台计算机之间使用具有匹配用户名和密码的本地帐户进行 Windows 文件共享访问时有时无

两台计算机之间使用具有匹配用户名和密码的本地帐户进行 Windows 文件共享访问时有时无

我正在一台 Windows 机器上设置一个自动化流程,用于备份另一台机器上的数据。该流程将作为本地帐户运行,该帐户存在于两台机器上,并且与用户名和密码匹配。我正在使用 Windows 的功能,使用匹配帐户来提供无需登录的“身份验证”,我已经多次使用过,没有出现问题。但是,现在我遇到了问题。

涉及以下两台机器:

  • DEV03
    • Windows Server 2008 R2 x64(恰好是 VMware VM,但这并不重要)
    • IP:10.12.48.97,10.12.48.88
  • DEV04
    • Windows Server 2003 x86
    • IP:10.12.48.126

这两台机器都不在 Active Directory 域中,我也无法将它们放在其中。但它们都位于同一个工作组中。

两台计算机上都存在一个用户名administrator和密码相同的帐户。该帐户位于Administrators每台计算机上的本地组中。

我通过 RDP 连接到两台计算机并使用该帐户登录administrator。然后,我通过以下两种方式之一从开始菜单启动常规命令提示符:

  • 定期启动,以桌面会话的登录用户身份运行 ( administrator)。以下结果中记录了这一点(logon)
  • 从“以不同用户身份运行”(2008)或“以...身份运行”(2003)开始。我仍然使用administrator手动输入的帐户。(我意识到这看起来很奇怪,应该无关紧要,但我把它包括进去是为了确保我没有发疯,因为我确信我得到了不同的结果,但现在我重新测试并把它全部列出来,也许不是。)这在结果中被记录为帐户名称,administrator

进入命令提示符后,我dir在另一台机器上的管理共享上发出一个简单的命令。

测试结果细分如下:

Test RDP ON  Run As          Dir of              Result
=================================================================
1    DEV03   (logon)        \\10.12.48.126\c$  Succeeds
2    DEV03   administrator  \\10.12.48.126\c$  Succeeds
3    DEV03   (logon)        \\DEV04\c$         'Access is denied.'
4    DEV03   administrator  \\DEV04\c$         'Access is denied.'
-----------------------------------------------------------------
5    DEV04   (logon)        \\10.12.48.88\c$   Succeeds
6    DEV04   administrator  \\10.12.48.88\c$   Succeeds
7    DEV04   (logon)        \\10.12.48.97\c$   'Logon failure: unknown user name or bad password.'
8    DEV04   administrator  \\10.12.48.97\c$   'Logon failure: unknown user name or bad password.'
9    DEV04   (logon)        \\DEV03\c$         Succeeds
10   DEV04   administrator  \\DEV03\c$         Succeeds

从 DEV04 ping DEV03 返回 .88 IP。所以我开始认为这个问题与主机名有关。但是,尽管我的服务器有多个 IP 地址,但我以前从未遇到过这个问题,这让我有点怀疑 Windows Server 2008。

我已经重新启动了两台服务器,并且刷新了 DNS 以确保万无一失。

我最关心的是测试 5 到 8。为什么连接会根据入站 IP 地址而有所不同?我没有在服务器上的 IP 设置中看到任何表明身份验证行为存在差异的内容。当然这不是防火墙问题,因为它正在连接,只是身份验证失败。

用户帐户是否与 Windows 服务器主机名相关联?服务器是否可能将主机名与第一个 IP (.88) 相关联(尽管它是第二个添加的),但无法识别其他 IP?

答案1

最好的办法是使用嗅探器(例如,Wireshark) 并查看数据包。它们会告诉您那里到底发生了什么。Windows 在 SMB 登录过程中有很多特殊之处,特别是通过简单主机名、完整 DNS 名称和 IP 地址登录的算法都不同。

我的猜测:在某些情况下,你可能需要登录<target host name>\administrator,你的 2-IP 服务器在两个地址之间的 SMB 配置可能存在一些差异,你可能有缓存登录对于一些测试用例。

另外,如果您的服务器的 2 个 IP 分配给同一个 NIC,我建议您删除其中一个,因为这会带来不必要的障碍:如果 NIC 有多个 IP,则 Windows 只会使用其中一个进行出站连接。

相关内容