1、用户账号映射
编辑samba主配置文件/etc/samba/smb.conf
p_w_picpath
添加字段 : username map = /etc/samba/smbusers 开启用户账号映射功能。
/etc/samba/smbusers 文件保存Samba账号和虚拟账号的映射关系.格式如下:
Samba 账号 = 虚拟账号
如下图所示:
p_w_picpath
Samba账号"linuxtest"映射到虚拟账号"windowstest"
新建Linux账号和Samba账号,用户名为 "linuxtest"
p_w_picpath
相关命令:
[root@LidadeFedora samba]# useradd linuxtest -s /sbin/nologin
[root@LidadeFedora samba]# passwd linuxtest
[root@LidadeFedora samba]# smbpasswd -a linuxtest
第一行添加一个系统用户,使用-s /sbin/nologin选项不允许其登陆到Linux系统
第二行给这个用户设置一个密码,这里设置为"123456"
第三行添加一个Samba用户,参数"-a"代表add.
保存相关文件,重启Samba服务:
p_w_picpath
在Windows客户端上进行访问测试:
p_w_picpath
使用虚拟用户windowstest登陆:
p_w_picpath
登陆成功:
p_w_picpath
2、多配置文件:
新建一个用户Samba1
p_w_picpath
相关命令:
[root@LidadeFedora samba]# useradd samba1 -s /sbin/nologin
[root@LidadeFedora samba]# smbpasswd -a samba1
为Samba1用户建立独立的配置文件:
p_w_picpath
相关命令:
[root@LidadeFedora samba]# cp smb.conf smb.conf.samba1
编辑smb.conf主配置文件:
p_w_picpath
%U代表当前登陆用户的用户名.
在主配置文件中添加一个共享:
p_w_picpath
新建文件夹"/linuxtest”,并设置其所有者和所属群组:
p_w_picpath
相关命令:
[root@LidadeFedora samba]# mkdir /linuxtest
[root@LidadeFedora samba]# chown linuxtest:linuxtest /linuxtest
编辑独立的配置文件:
删除公共配置部分,并添加一个共享:
p_w_picpath
新建文件夹"/samba1",并修改所有者和群组为samba1
p_w_picpath
相关命令:
[root@LidadeFedora samba]# mkdir /samba1
[root@LidadeFedora samba]# chown samba1:samba1 /samba1
重启samba服务
[root@LidadeFedora samba]# service smb restart
关闭 SMB 服务:                                            [确定]
关闭 NMB 服务:                                            [确定]
启动 SMB 服务:                                            [确定]
启动 NMB 服务:                                            [确定]
测试:
在Windows上,删除上次访问时保存的连接:
p_w_picpath
相关命令:
net use * /del
使用账号"linuxtest”访问:
p_w_picpath
p_w_picpath
结果如下图所示:
p_w_picpath
删除连接,使用账号samba1访问:
p_w_picpath
结果如下图所示:
p_w_picpath
显而易见,使用linuxtest账号登录时,Samba服务器读取的是smb.conf主配置文件,因为Samba服务器没有找到smb.conf.linuxtest。使用samba1用户登录时,Samba服务器读取的是smb.conf.samba1。