Windows Server 2019“NFS 服务器”UID/GID 与 Auth_SYS 映射

问题描述 投票:0回答:1

我安装了 Windows Server 2019,其中包含用于 nfs 映射的 LDAP 实例 (nfsmappingstore)。 我使用 powershell cmdlet Install-NfsMappingStore 创建了这个。

为了说明这一点,这里是该商店中的用户列表,以及一个用户的测试: enter image description here

我有一个 NFS 共享设置,如下所示: enter image description here

当我打开名为“启用未映射的用户访问”的圆圈选项以及子选项“允许未映射的用户 Unix 访问(通过 UID/GID)”时,我可以转到我的 uBuntu 18.04 计算机并使用以下命令成功安装它:命令:

sudo mount -t nfs server:/AutoProv mnt

然后我可以看到共享中的文件和文件夹。

但是,当我关闭该选项并希望实际使用映射的用户功能时,我收到错误:

root@br-dv-ss-l01:/home/steve# mount -vvvv -t nfs server:/AutoProv mnt
mount.nfs: timeout set for Fri Apr  2 18:28:11 2021
mount.nfs: trying text-based options 'vers=4.2,addr=10.200.225.1,clientaddr=10.200.225.104'
mount.nfs: mount(2): Protocol not supported
mount.nfs: trying text-based options 'vers=4.1,addr=10.200.225.1,clientaddr=10.200.225.104'
mount.nfs: mount(2): Permission denied
mount.nfs: access denied by server while mounting server:/AutoProv
root@br-dv-ss-l01:/home/steve#

我认为这意味着 Windows Server 2019 并未真正发送或解释 uid/gid。查看服务器上的事件日志,它似乎表明它很高兴并且读取 LDAP 实例正常,并且 Test cmdlet 给出没有错误。

enter image description here

我能想到的一个可能的改变是在挂载命令中添加“-o nfsvers = 3”,这似乎会导致略有不同的效果。 当我这样做时,共享确实挂载了,但 NFS 服务器拒绝让我看到共享内部的任何内容: enter image description here

有人可以指导我如何进一步调查这个问题吗? 目前我不知道如何验证 Windows Server 所获取的 UID/GID,所以我真的不知道问题出在哪一边。

谢谢!

linux mapping mount nfs
1个回答
0
投票

顺便说一句,我们对此从未得到任何答复。 LDAP 选项似乎根本不起作用。 然而,passwd、组文件映射选项效果很好,我们改用了它。

文件必须以小写形式命名“group”和“passwd”,没有扩展名。它们必须放置在“C:\Windows\System32\drivers tc”中。 “组”的语法:

machinename\PodGroup:x:2501:2500,3500
machinename\MyLocalWindowsGroup:x:2502,3500
domain\ACLname:x:2503:0,2500

或者一般来说:

组名:x:GID:UID1,UID2,等等....

本质上,这与 Linux 使用的映射相同,如下所述:https://www.thegeekdiary.com/etcgroup-file-explained/

因此,您在运行 NFS 的 Windows Server 上定义一个本地组,并在该行的第一个条目中引用该组,或者在那里使用域 ACL 组。每行的每个“列”都用冒号分隔。第二个条目“x”是我认为未使用的描述字段。 第三个是您想要将窗口组映射到的 GID。

密码:

domain\stevesims:x:0:0:Root User,,,:c:\users\stevesims
domain\johndoe:x:2500:2501:Pod User,,,:c:\users\johndoe
domain\janedoe:x:3500:2501:Pod User,,,:C:\users\janedoe

或者一般来说:

username:x:UID:GID:desc,,,:WindowsPathToItsProfile

一旦这些文件在 NFS 服务器上就位,您必须重新启动 NFS 服务器服务,否则它将不会重新读取该文件。

重启后,它会读取该文件,如果Linux机器向NFS服务器写入文件,它将被视为拥有这些文件中匹配的Windows帐户或组的权限。

© www.soinside.com 2019 - 2024. All rights reserved.