Winbind与AD:本地用户与AD用户名重复的访问优先级配置问题
Winbind与AD:本地用户与AD用户名重复的访问优先级配置问题
嘿Stefan,这个同名用户的优先级问题其实很好解决,咱们只要给SSH和SMB分别设置不同的用户查找逻辑就行,具体步骤如下:
1. 让SSH优先匹配本地用户
系统级的身份验证(比如SSH)是靠/etc/nsswitch.conf来控制用户查找顺序的,咱们要确保本地用户的优先级高于AD用户。
编辑/etc/nsswitch.conf文件,找到passwd和group这两行,调整成下面这样:
passwd: files winbind group: files winbind
这里的files代表本地的/etc/passwd和/etc/group文件,把它放在winbind前面,SSH登录时就会先匹配本地用户啦。
2. 配置SMB优先调用AD用户
接下来单独给Samba做配置,让它优先找AD里的同名用户。打开Samba的主配置文件/etc/samba/smb.conf,在[global]段落里添加或修改这两个参数:
[global] # 保留你原来的其他配置,新增下面两行 winbind use default domain = yes winbind lookup order = winbind files
winbind use default domain = yes:不用手动输入域名\用户名,直接输用户名就会默认匹配AD域的用户winbind lookup order = winbind files:强制Samba先查AD(Winbind)的用户,再查本地用户,刚好和系统的逻辑反过来
3. 重启服务并验证效果
改完配置后,得重启相关服务让设置生效:
systemctl restart smb nmb winbind
然后做两个简单测试确认:
- SSH测试:用同名用户登录SSH,输入
id <你的用户名>,看UID是不是本地用户的范围(一般本地用户UID小于1000,AD用户的UID是Winbind分配的大数值,比如10000+) - SMB测试:从Windows端访问共享,直接用用户名登录,或者在Linux上用
smbclient //<服务器IP>/<共享名> -U <用户名>,验证是不是用AD用户的权限访问的(比如看共享文件的权限对应)
如果遇到问题,可以去/var/log/samba/log.smbd日志里看看Samba用户验证的过程,方便排查~
备注:内容来源于stack exchange,提问作者parcival39
相关产品推荐
相关产品推荐

