前言

在第二章的基础上继续实训,实训任务1:配置Samba服务,任务1 创建Samba共享,本地目录为/data/share,要求:共享名为share1,仅允许zsuser用户能上传文件,任务2 创建Samba共享,本地目录为/data/public,要求:共享名为public,允许匿名访问,所有用户都能上传文件。

虚拟机需求:1台服务器(Server)、1台客户端(Client)

在第二章的基础上继续实训

实训任务1:配置Samba服务

任务1 创建Samba共享,本地目录为/data/share,要求:

共享名为share1
仅允许zsuser用户能上传文件

任务2 创建Samba共享,本地目录为/data/public,要求:

共享名为public

允许匿名访问

所有用户都能上传文件

一、在服务器(Server)上安装Samba服务

1. 确保良好的网络连接也要保证设备的联网

1
2
yum list installed | grep samba                                \\查看是否安装了samba服务
yum -y install samba \\安装samba服务

2. 防火墙设置

1
2
firewall-cmd --permanent --zone=public --add-service=samba              \\开启samba服务 允许通过
firewall-cmd --reload \\重启防火墙

3. 开启samba服务

1
2
systemctl start smb nmb                                 \\开启samba服务
systemctl enable smb nmb \\开机自启samba服务

4. 创建samba用户

1
2
3
4
useradd zsuser                          \\添加zsuser用户
smbpasswd -a zsuser \\为zsuser用户添加密码
useradd tom \\添加多一个用户好测试
smbpasswd -a tom \\设置密码

二、在服务器(Server)上创建samba共享目录

1. 创建share、public目录

1
2
mkdir /data /data/share/ /data/public/                          \\创建share、public目录
chmod 777 /data /data/share/ /data/public/ \\设置目录权限

2. 创建share1、public共享目录

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
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服务

1
2
testparm                                                        \\检查语法错误
systemctl restart sbm nmb \\重启samba服务

4. 配置selinux

1
2
3
4
5
6
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 ==退出==

3. windows 7 测试

结尾

至此,实验结束。希望对你有所帮助,有任何问题请在下方留言。可以关注我的 公众号以及订阅我的文章 ,感谢你的支持,是对我最大的动力,当然了,更多的是因为热爱。