新浪博客

设置特定用户登录samba服务器访问共享目录

2025-05-14 14:32阅读:
设置特定用户登录samba服务器访问共享目录
如果公司有多个部门,因工作需要,就必须分门别类地建立相应部门的目录。要求将销售部的资料存放在Samba服务器的/pub目录下集中管理,以便销售人员浏览,并且该目录只允许销售部员工访问。

需求分析:在/pub目录中存放有销售部的重要数据,为了保证其他部门无法查看其内容,我们需要将全局配置中security设置为user安全级别。这样就启用了Samba服务器的身份验证机制。然后在共享目录/pub下设置valid users字段,配置只允许销售部员工能够访问这个共享目录。
1)建立共享目录,并在其下建立测试文件。

[root@RHEL8-5 ~]# mkdir /pub
[root@RHEL8-5 ~]# mkdir /pub
[root@RHEL8-5 ~]# touch /pub/test_share.tar
2)添加销售部用户和组并添加相应的Samba账号。

使用groupadd命令添加sales组,然后执行useradd命令和passwd命令,以添加销售部员工的账号及密码。此处单独增加一个test_user1账号,不属于sales组,供测试用。
[root@RHEL8-5 ~]# groupadd sales #建立销售组sales
[root@RHEL8-5 ~]# useradd -g sales sale1 #建立sale1,添加到sales
[root@RHEL8-5 ~]# useradd -g sales sale2 #建立sale2,添加到sales
[root@RHEL8-5 ~]# useradd test_user1 #供测试用
[root@RHEL8-5 ~]# passwd sale1 #设置用户sale1密码
[root@RHEL8-5 ~]# passwd sale2 #设置用户sale2密码
[root@RHEL8-5 ~]# passwd test_user1 #设置用户test_user1密码
为销售部成员添加相应Samba账号。
[root@RHEL8-5 ~]# smbpasswd –a sale1
[root@RHEL8-5 ~]# smbpasswd –a sale2
3)修改Samba主配置文件smb.conf
[global]
workgroup = Workgroup
server string = File Server
security = user #设置user安全级别模式,默认值
passdb backend = tdbsam
printing = cups
printcap name = cups
load printers = yes
cups options = raw

[sales] #设置共享目录的共享名为sales
comment=sales
path=/pub #设置共享目录的绝对路径
writable = yes
browseable = yes
valid users = @sales #设置可以访问的用户为sales
4)设置共享目录的本地系统权限。
[root@RHEL8-5 ~]# chmod 777 /pub –R
[root@RHEL8-5 ~]# chown :sales /pub -R
5[root@RHEL8-5 ~]# setenforce 0 设置selinux宽松模式
6)让防火墙放行,这一步很重要。
[root@RHEL8-5 ~]# firewall-cmd --permanent --add-service=samba
[root@RHEL8-5 ~]# firewall-cmd –reload //重新加载防火墙
7)重新加载samba服务。
[root@RHEL8-5 ~]# systemctl restart smb
//或者[root@RHEL8-5 ~]# systemctl reload smb

8)测试。
一是在windows 10中利用资源管理器进行测试,二是利用Linux客户端。
1)依次选择开始”→“运行命令,\\172.16.135. 128。打开“Windows安全对话框。输入sale1sale2及其密码,登录后可以正常访问。
2)映射网络驱动器访问samba服务器共享目录。双击打开我的电脑,再依次选择工具”→“映射网络驱动器命令,在映射网络驱动器对话框中选择Z驱动器,并输入tech共享目录的地址,如\\172.16.35.128\sales。单击完成按钮,在接下来的对话框中输入可以访问sales共享目录的samba账号和密码。
3)再次打开计算机,驱动器Z就是共享目录sales,可以很方便地访问了。

Linux客户端访问Samba共享
[root@RHEL8-5 ~]# yum install samba-client -y
[root@RHEL8-5 ~]# yum install cifs-utils -y
2Linux客户端使用smbclient命令访问服务器。
smbclient可以列出目标主机共享目录列表。Smbclient

我的更多文章

下载客户端阅读体验更佳

APP专享