![如何在 Windows 10 上使用带有凭据的 NFS 客户端](https://linux22.com/image/733942/%E5%A6%82%E4%BD%95%E5%9C%A8%20Windows%2010%20%E4%B8%8A%E4%BD%BF%E7%94%A8%E5%B8%A6%E6%9C%89%E5%87%AD%E6%8D%AE%E7%9A%84%20NFS%20%E5%AE%A2%E6%88%B7%E7%AB%AF.png)
我正在尝试为我的网络提出一个 SMB 替代解决方案。我在 Windows 2016 上安装了 NFS 服务器。问题在于从 Windows 10 连接到该服务器。我花了将近一天的时间在互联网上搜索,但每个人都提到了匿名访问。那么有没有办法使用权限和凭据来实现这一点?我知道我可以将其限制为特定 IP,但我也想使用特定用户。我正在使用 Windows 10 的客户端 NFS 功能,是否有任何第三方软件可以使用凭据来做到这一点?
答案1
我正在尝试为我的网络提出一个 SMB 替代解决方案。
CIFS 是 SMB 的继承者。它成熟、快速、灵活、安全、稳定且应用广泛。实际上没有“替代方案”(或者说不需要替代方案),这就是为什么没有其他“内置”文件服务器的原因。不过,WebDAV 服务除外。
我在 Windows 2016 上安装了 NFS 服务器。
如果你使用 Windows Server(s) 客户端,我个人会强烈建议使用 CIFS。NFS 既不是为 Windows 文件访问而构建的,功能也不完整。NFS 缺少任何身份验证,没有 ACL 传输,并且完全缺乏传输安全性。此外,它在 WFA 兼容层中运行,而该层并非为性能而构建的。
问题在于从 Windows 10 连接到该服务器。我花了将近一天的时间在网上搜索,但每个人都提到了匿名访问。
是的,NFS 就是这样工作的。从协议上来说,没有主机到客户端的身份验证。
那么有没有什么办法可以使用权限和凭证来实现这一点呢?
NFS 没有任何经过设计的身份验证。NFS 的构建是为了允许通过网络连接访问文件系统,而不是文件(甚至用户)访问。身份验证和/或授权必须由另一个渠道提供,如 kerberos 或其他集成 rpc 解决方案。
不幸的是,集成的 NFS 安全解决方案很少而且很复杂。最初,NFSv4 规范设计者打算强制支持简单公钥机制 (SPKM3) 和低基础设施公钥机制 (LIPKEY),这将允许从客户端到 NFSv4 服务器可访问的任意数据库使用简单的用户名/密码身份验证。然而,在 SPKM3/LIPKEY 中发现了许多无法解决的缺陷,因此支持代码被删除 - 甚至从 Linux 内核本身中删除。
我正在使用 Windows 10 的 NFS 功能客户端,是否有任何第三方软件可以使用凭证执行该操作?
是的。MAPR 客户端内置了 Kerberos(但没有 SSO,即使在 Windows 下也是如此);AXE 也具有 RPC 安全性。该软件包每个客户端的价格约为 50 美元。但据我所知,没有适用于 Windows 的 NFS 客户端解决方案能够提供与原生 CIFS 相当的舒适度和性能。也没有免费的(或便宜/好的)解决方案。此外,当配置 AD 身份验证时,AXE 无法访问 Linux 挂载点。
如果我错了,请 PM/评论;我们从 2002 年开始实施 NFS 访问解决方案,但从那时起就一直找不到“那个”。
在实施 NFS 时,请始终记住:没有任何加密(您必须从外部实现,例如通过 SSH)交通安全(尽管它将包含在 SSH 中)。