访问 UNC 路径的服务,Win 2008R2,最佳实践?

访问 UNC 路径的服务,Win 2008R2,最佳实践?

我在机器 A 上运行一个 Apache Webserver 服务。

它通过以下方式提供来自机器 B 的一些文件:

别名 /foo \machineB\someshare

MachineB\someshare 对“Everyone”具有读取权限。Apache 作为 LocalService 运行。

当我启动机器时,它无法从 /foo 提供文件,但如果我登录到机器上,并且只需触摸 \machineB\someshare,它看起来就像被授予访问权限,并且它正确地从 /foo 提供文件。

我如何实现自动化,这样我就不需要登录并触及网络共享?

答案1

尝试以域用户服务帐户的身份运行 Apache,当然需要具备必要的权限,然后看看效果如何。

答案2

一种可能性是 - 让 Web 服务器通过 fstab 中的 cifs 挂载远程共享?您必须提供凭据,但我相信它们可以是来宾凭据。或者,挂载和卸载的启动脚本可能会产生相同的效果。

答案3

如果我没记错的话,从 Windows Vista 开始,安全组“Everyone”就不包含“匿名”登录。当使用以“LocalService”身份运行的服务访问远程共享时,它会使用 NULL 用户或匿名用户进行访问,因此无法访问远程共享。

按照 SpacemanSpiff 的建议,将 apache 更改为以域用户身份运行,或者尝试使用“NetworkService”而不是“LocalService”。

相关内容