对于 samba 专家来说,这可能是一个简单的问题:我有一个 archlinux 机器,它以 samba 4 AD 的形式运行,工作正常。我想向 samba 添加一个用户,这导致我有两个不同的解决方案:
- 使用以下命令创建仅 Samba 用户
samba-tool user add USERNAME
- 使用以下方式从 unix 用户创建 samba 用户
smbpasswd -a <username>
我尝试了这两种方式,但创建的用户具有不同的用户 ID(通用/数字用户名)并且与 unix 用户不匹配,这导致文件权限方面的复杂情况。
有没有办法创建“匹配”用户?还是我完全没理解重点?
答案1
是的,Samba用户和Linux用户是可以区分的。
Linux 用户通过 PAM 进行身份验证。文件类似于/etc/pam.d/login
或/etc/pam.d/system-auth
取决于您的发行版。
相反,samba 用户通过 winbind
守护进程进行身份验证。它们通过可读取的域进行身份验证/etc/smb/samba.conf
。如果用户通过 samba 身份验证,并且存在这样的 Unix 用户,则默认情况下将其映射到此用户,否则将映射到 nobody。
要访问文件,必须将用户映射到可以访问文件且也可以访问 Samba 中共享文件的用户。有两层安全性。