我有一个由前 IT 部门设置的 Linux 文件服务器,并设置了权限以允许 Jane 使用用户名“jane”访问某个文件夹
我放入的新 AD 域将每个人的用户名设置为首字母加姓氏,因此她在域中的用户名是“jdoe”
由于我不想在这里详述的原因,我无法在文件服务器上直接添加“jdoe”作为用户
我可以将她的 SamAccountName 设置为“jane”,并将她的用户 UPN 登录保留为“jdoe”吗?这样可以让她进入 Linux 文件共享吗?
答案1
Samba 有一个用户名映射您可以使用配置选项来指定将透明地映射到不同的本地用户名的远程用户名列表。
/etc/smb/samba.conf 中的格式如下:
[share]
...normal share optionsoptions
username map = /path/to/file
users = jane bob fred ... etc
/path/to/file 的内容应该是:
jane = jdoe
您可以向此文件添加更多行,包括带空格的引号用户名、对整个组的引用等。有关更多详细信息,请参阅上面的文档链接。
我最初的回答有点儿不严谨,但作为参考,这里是关于强制用户的交易。您可以使用将用户添加到 samba 密码文件中,smbpasswd -a
而无需将其添加为 unix 系统用户。然后,您可以在 samba 共享上对这些用户进行身份验证。您不必将他们添加到 unix 系统密码列表中才能使其正常工作,但由于他们的用户不存在,他们将无法特别使用共享,因为 unix 特权系统将阻止他们写入等。为了解决这个问题,有一个“强制用户”选项,您可以将其添加到任何共享中,并且任何经过身份验证的用户在该共享上执行的所有操作都将使用该 unix 系统用户执行。因此,如果您为每个人创建共享,然后仅为 jdoe 创建一个重复的共享并添加到force user = jane
该共享,即使 jdoe 进行了身份验证,他们也会使用 jane 的 unix 用户在系统上读取/写入文件。