1。smbclient报错:NT_STATUS_PASSWORD_MUST_CHANGE
安装并且配置samba使用OpenLDAP,当时使用了migration tool将linux的用户xliu转到LDAP,并且在该LDAP用户中添加了SMB需要使用的属性。但是使用smbclient时,提示:session setup failed: NT_STATUS_PASSWORD_MUST_CHANGE
解决:使用smbpasswd -U xliu更改用户密码,可以和原来一致。之后再使用smbclient就没有问题了。
2。如何在OpenLDAP中为用户设置sambaLMPassword
和sambaNTPassword
这两个属性?
使用mkntpwd工具: mkntpasswd -L <LanMan passwd> -N <NT passwd>
3。如何设置让只属于PowerUsers组(gid=901)的远程登录用户对共享盘具有写的权限?
首先设置挂载点的权限:chown -R :901 /mnt/bk/hdb1
然后配置/etc/fstab,使mount后的挂载点属于PowerUsers组: /dev/hdb1 /mnt/bk/hdb1 umask=0002,gid=901 0 0
接着运行mount -a,这时如果ls -al /mnt/bk,能够看到:
drwxrwxr-x 5 root PowerUsers 8192 Jun 9 21:44 hdb5
这个时候远程计算机上使用属于PowerUsers的用户登录,就应该可以有读写的权限。
4。我按照条目3的步骤,然后使用了属于PowerUsers组的帐户xliu登录samba共享成功,但是只有读取的权限?
PowerUsers是OpenLDAP里配置的组,同时在LDAP里配置了帐户xliu并且隶属于PowerUsers,uid=900,gid=901。
同时本地也有用户帐户xliu,uid=500,gid=500,密码和LDAP里设置得一样了。
检查日志文件/var/log/samba/smbd.log,发现:
xliu-laptop (192.168.0.102) connect to service hdb5 initially as user xliu (uid=500, gid=500) (pid 10409)
原来是使用本地帐户去登录了,检查/etc/nsswitch.conf,发现:
passwd: files ldap
shadow: files ldap
group: files ldap
原来我之前将机器配置成先认证本地存在的帐户,然后才是LDAP。所以把本地帐户的xliu删除后,重新登录smb共享,能够改写文件。