转自 叶泯希博客:https://blog.418121.xyz/posts/cfebefbe.html
前言
虚拟机需求:1台服务器(Server)、1台客户端(Client)
在第二章的基础上继续实训
实训任务1:配置Samba服务
任务1 创建Samba共享,本地目录为/data/share,要求:
共享名为share1
仅允许zsuser用户能上传文件
任务2 创建Samba共享,本地目录为/data/public,要求:
共享名为public
允许匿名访问
所有用户都能上传文件
一、在服务器(Server)上安装Samba服务
1. 确保良好的网络连接也要保证设备的联网
yum list installed | grep samba \\查看是否安装了samba服务
yum -y install samba \\安装samba服务
2. 防火墙设置
firewall-cmd --permanent --zone=public --add-service=samba \\开启samba服务 允许通过
firewall-cmd --reload \\重启防火墙
3. 开启samba服务
systemctl start smb nmb \\开启samba服务
systemctl enable smb nmb \\开机自启samba服务
4. 创建samba用户
useradd zsuser \\添加zsuser用户
smbpasswd -a zsuser \\为zsuser用户添加密码
useradd tom \\添加多一个用户好测试
smbpasswd -a tom \\设置密码
二、在服务器(Server)上创建samba共享目录
1. 创建share、public目录
mkdir /data /data/share/ /data/public/ \\创建share、public目录
chmod 777 /data /data/share/ /data/public/ \\设置目录权限
2. 创建share1、public共享目录
vim /etc/samba/smb.conf \\编辑配置文件详细内容如下所示
[global] \\在全局变量中加入
map to guest = bad user \\开启匿名访问
[share1]
comment = share1 \\共享注释
path = /data/share \\指定共享目录
write list = zsuser \\写入列表
writable = no \\不支持写入数据(列表中写读,不在列表只读)
[public]
comment = public \\共享注释
path = /data/public \\指定共享目录
guest ok = yes \\允许匿名访问
browseable = yes \\所有人可见
writeable = yes \\支持写入数据
read only = no \\是否可读
3. 检查语法错误跟重启samba服务
testparm \\检查语法错误
systemctl restart sbm nmb \\重启samba服务
4. 配置selinux
setenforce 1 //开启
ls -ldZ /data/share /data/public //查看文件夹安全上下文
chcon -t samba_share_t /data/share /data/public
//为/data/share设置samba_share_t标签目录,使selinux允许samba读和写这个目录。
//为/data/public设置samba_share_t标签目录,使selinux允许samba读和写这个目录。
ls -ldZ /data/share /data/public //查看文件夹安全上下文
三、在客户机(Client)上测试
1. 测试 任务1
smbclient //192.168.1.10/share1 -U zsuser 使用zsuser用户访问samba服务
mkdir test 测试是否能创建test文件夹
ls 查看列表 显示test文件夹 证明成功
exit 退出
smbclient//192.168.1.10/share1 -U tom 使用tom用户访问samba服务
mkdir test1 测试是否能创建test1文件夹
ls 查看列表 不显示test1文件夹 证明除了zsuser用户能写入其余用户不能写入只能读
exit 退出
2. 测试 任务2
smbclient//192.168.1.10/share1 -U guest 使用匿名用户访问samba服务
mkdir test1 测试是否能创建test1文件夹
ls 查看列表 显示test1文件夹 证明所有用户都能读写
exit 退出