一、企业环境及需求
1、samba服务器目录
公共目录 /share
销售部 /sales
技术部 /tech
2、企业员工情况
主管:总经理master
销售部:经理mike,员工worker01,员工worker02
技术部:经理tom,员工worker03,员工worker04
3、企业需求
企业使用samba搭建文件服务器,需要建立公共共享目录,允许所有人访问,权限为只读。为销售部和技术部分别建立单独目录,只允许总经理和对应部门的员工访问,并且企业员工无法在网络邻居查看到非部门的共享目录。
企业网络拓扑图
samba服务器的主机IP
4、需求分析
企业要求只允许本部门访问自己的目录,其他部门目录不可见。
这就需要使用目录共享字段“browseable=no”,以实现隐藏功能,但这样设置,所有用户都无法查看该共享目录。故对于这种一共享目录有多需求,一个配置文件无法完成这项工作,需要考虑建立多个独立的配置文件,以满足不同员工的访问需求。
二、项目实施
1、安装并启动samba服务
检测系统是否安装了samba相关性软件包,并查看samba软件包的信息
安装samba服务
启动smb服务,设置开机启动
2、添加samba账号
分别建立各部门存储资料目录
添加用户和组
先建立销售组sales和技术组tech,然后添加总经理账号,添加成员账号加入对应的组中,并设置密码
将已经创建好的用户添加samba账号
3、配置运行环境
设置共享目录的本地系统权限
更改共享目录的context值
防火墙放行samba服务
4、设置配置文件
建立独立配置文件
编辑主配置文件/etc/samba/smb.conf,添加相应字段,确保samba服务器会调用独立的用户配置文件以及组配置文件
注:global全局配置的第三、四行,分别是使samba服务器加载/etc/samba目录下,格式为“用户名.smb.conf"的配置文件和”组名.smb.conf"的配置文件。
设置总经理master配置文件/etc/samba/master.smb.conf
设置销售组sales配置文件/etc/samba/sales.smb.conf
设置技术组tech配置文件/etc/samba/tech.smb.conf
重新加载samba服务
三、测试
在Windows(本机为win11)客户端上分别使用总经理master,销售组组长mike,技术组员工worker04等用户登录samba服务器,验证配置是否正确(需要多次注销客户端Windows)
对与共享目录仅有只读权限,对所在目录有读写权限
总经理master可以访问所有部门目录,每个部门都只能访问自己的目录,权限为只读。测试完成,项目完毕!
测试拓展:Linux客户端访问samba共享
准备一台Linux操作系统的主机充当客户端,并安装samba-client和cifs-utils
列出目标的共享目录列表
进入master目录,同时进入交互界面
权限与windwos环境下一致