centos samba 看不到共享目录_Samba项目实战

samba是一款能将UNIX实现Windows SMB/CIFS文件共享服务器的套件,本篇文章将会通过案例互动的方式让大家学习:SBIT特殊权限、用户组群以及Samba权限的配置。

1> 原始需求

14334a773339bde3a5b2aac89e657044.png

2> 案例分析

ed6891c7eb3d3b8236940ae6dd0a74fd.png

用户主组附加组
xga(管理员)xgaxxgcxy,padmin
xgu(员工)xxgcxy

由于各部门需求一致,表格处仅对信息工程学院部门用户展开分析。

3> SAMBA服务器部署

在部署开始前需要仔细检查Linux服务器是否正确配置网络接口信息。

3.1> 安装Samba套件并调整防火墙策略
yum -y install sambafirewall-cmd --permanent --add-service=sambafirewall-cmd --reload

c3e4931adfbb1fe69932e6b59af6d0a0.png

3. 2 >  创建用户分组并查看分组Gid
groupadd xxgcxygroupadd glxygroupadd wyxygroupadd padmincat /etc/group | grep -E "xxgcxy|glxy|wyxy|padmin"

94d35ad2cac52ce43b1f934434080868.png

3.3> 建立Samba账号

成为Samba账号的前提是该账号必须是Linux系统中的用户。

useradd xga -s /sbin/nologin -G 1001,1004useradd xgu -s /sbin/nologin -g 1001useradd gla -s /sbin/nologin -G 1002,1004useradd glu -s /sbin/nologin -g 1002useradd wya -s /sbin/nologin -G 1003,1004useradd wyu -s /sbin/nologin -g 1003

此处使用的-G参数为修改新的附加组列表,-g参数为强制修改新主组,需要根据前面查询到的实际gid来输入命令。

建立用户后可以通过 id [user] 命令来验证配置是否正确。

id xga

a51799f6642470e85da4dc356f2c2660.png

使用 smbpasswd -a [username] 命令将规划用户依次授权smb登录

smbpasswd -a xgapdbedit -L

授权smb用户步骤一致,此处仅添加xga用户命令作为演示,通过命令 pdbedit -L 命令可以查询所有授权smb用户

110ea081aeca83217aa8732b3f483cd1.png

3.4> 创建共享目录并配置权限

新建用于smb共享的总目录并修改上下文类型

mkdir /smbsharechcon -t samba_share_t /smbshare/ls -ldZ /smbshare

be7b858a6ad00375cce93d51c1e039d4.png

创建部门文件夹并配置相应权限

cd /smbshare/mkdir -m 1777 xxgcxy glxy wyxychown xga:xga xxgcxy/chown gla:gla glxy/chown wya:wya wyxy/

a7fe571335672c7c8984671535557ee0.png

此处1777属于启用SBIT特殊权限(权限只对文件夹生效),可以用 ls -l 查看到文件夹权限为 drwxrwxrwt ,这样配置是确保用户只能删除属于自己的文件,搭配 smb.conf 的 inherit 继承父目录所属主功能可以做到部门员工只能上传下载而不能删除文件的需求。

创建公用目录及子目录并配置相应权限

mkdir -m 755 publiccd publicmkdir -m 775 信息工程学院 管理学院 外语学院 Toolschown xga:xxgcxy 信息工程学院/chown gla:glxy 管理学院/chown wya:wyxy 外语学院/chown root:padmin Tools/

8efee8e955459ce56fd10946f785faca.png

3.5> 修改Samba配置文件

vim /etc/samba/smb.conf
[global]        workgroup = WORKGROUP        security = user[信息工程学院]        valid users = +xxgcxy        writable = yes        path = /smbshare/xxgcxy        inherit owner = yes        create mask = 0744        directory mask = 0777        force directory mode = 1000[管理学院]        valid users = +glxy        writable = yes        path = /smbshare/glxy        inherit owner = yes        create mask = 0744        directory mask = 0777        force directory mode = 1000[外语学院]        valid users = +wyxy        writable = yes        path = /smbshare/wyxy        inherit owner = yes        create mask = 0744        directory mask = 0777        force directory mode = 1000[公用]        valid users = +xxgcxy,+glxy,+wyxy        writable = yes        path = /smbshare/public        create mask = 0775        directory mask = 0775        force directory mode = 0000

建议将配置文件中的[homes]对应值全部注释避免混淆。

因为Windows默认工作组为WORKGROUP,所以在Samba服务中我们也要将工作组改成Windows默认,这样Windows客户机就可以在“网络”中发现我们的Samba服务器快速建立联机。

91ba7f0c571acfb5818af71405f10ead.png

4> 运行Samba服务

4.1> 调整SELinux

setsebool -P samba_export_all_ro 1setsebool -P samba_export_all_rw 1

4.2> 启动Samba套件

systemctl restart nmb smb

a06aaddb7907291366ec6e76b834f028.png

5> 访问Samba共享

完成上述配置后我们的SMB文件共享服务器就成功运行啦,接下来就是要使用客户机与我们的Samba服务器建立联机。

但是在Linux中访问共享文件呢还差一步——安装Samba客户端。

yum -y install samba-client cifs-utils

5.1> Linux - 列出共享目录

smbclient -L 10.0.0.211 -U xga

命令中使用信息工程学院管理员账号xga进行访问,大家可以通过命令登录其他用户进行尝试。

7d591e779fffbba1740879e232084012.png

5.2> Linux - 访问共享目录

smbclient //10.0.0.211/信息工程学院 -U xga

smbclient操作的指令和ftp类似:dir命令列出当前目录的文件/文件夹,rm命令删除共享目录的文件,rd命令删除共享目录的空文件夹,put命令上传文件到共享目录,get命令将共享文件下载到本机。

13d10499ee4f817748768eff62ae4b2f.png

5.3> Windows - 访问共享目录

在Windows中访问只需要在“此电脑”中输入Samba服务器的 UNC 路径即可,例如 \\10.0.0.211 随后在Windows安全对话框中输入Samba共享账号信息即可访问。

0c832215f1d9c6504d630836c68a052e.png

需要确保Samba服务器和Windows客户端在相同广播域中才能访问哦~


以上就是这篇文章的全部内容,如果喜欢我们的内容欢迎 关注 收藏转发喔~

946a36e8453eca83203a11b487578f4d.png

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值