REHL7.4配置Samba服务小实验
案例
企业需要设置三个共享目录:公共目录/share 、销售部/sales、技术部/tech。
企业设置主管为总经理master,销售部:销售经理mike,员工sky,员工jane;技术部:技术部经理tom,员工sunny,员工bill。
公司使用Samba搭建文件服务器,需要建立公共共享目录,允许所有人访问,权限为只读。为销售部和技术部分别建立单独的目录,只允许总经理和对应部门员工访问,并且公司员工无法在网络邻居查看到非部门的共享目录。
Samba服务器 | linux客户机 | windows客户机 | |
---|---|---|---|
IP地址 | 172.16.x.11/24 | 172.16.x.12/24 | 172.16.x.13/24 |
1. 创建目录
mkdir /share
mkdir /sales
mkdir /tech
2.添加用户和组
groupadd sales
groupadd tech
3.创建master用户
useradd master
4. 添加用户到用户组
useradd -g sales mike
useradd -g sales sky
useradd -g sales jane
useradd -g tech tom
useradd -g tech sunny
useradd -g tech bill
5. 修改用户密码
passwd master
passwd mike
passwd sky
passwd jane
passwd tom
passwd sunny
passwd bill
6. 修改权限
chmod 777 /share
chmod 777 /sales
chmod 777 /tech
7. 创建samba用户
smbpasswd -a master
smbpasswd -a mike
smbpasswd -a sky
smbpasswd -a jane
smbpasswd -a tom
smbpasswd -a sunny
smbpasswd -a bill
8. <跳到9>要是步骤9出错,可以回到这里解决问题
找了很久的资料, 发现问题是出在 selinux 放火墙上, 这个防火墙的配置文件为 /etc/selinux/config
配置内容:
原来是关闭: SELINUX=disabled
改成打开: SELINUX=enforcing
然后重启服务器
9. 配置防火墙
sudo chcon -t samba_share_t /share
sudo chcon -t samba_share_t /sales
sudo chcon -t samba_share_t /tech
10.创建独立配置文件
cd /etc/samba
sudo vim smb.conf
配置公共目录,再末尾添加:
[public]
conment = “Public Stuff”
path = /share
writable=yes
public=yes
11. 复制文件
sudo cp smb.conf master.smb.conf
sudo cp smb.conf sales.smb.conf
sudo cp smb.conf tech.smb.conf
12.在[global]后面添加包含文件配置
vim /etc/samba/smb.conf
include=/etc/samba/%U.smb.conf
include=/etc/samba/%G.smb.conf
13.编辑总经理master文件,末尾添加
sudo vim /etc/samba/master.smb.conf
[sales]
conment = sales
path = /sales
writable=yes
valid users = master
[tech]
comment = tech
path = /tech
writable=yes
valid users = master
14. 编辑sales,末尾添加
sudo vim /etc/samba/sales.smb.conf
[sales]
conment = sales
path = /sales
writable=yes
valid users = @sales, master
15. 编辑tech,末尾添加
sudo vim /etc/samba/tech.smb.conf
[tech]
comment = tech
path = /tech
writable=yes
valid users = @tech, master
16. 放行smaba TCP服务端口
iptables -I INPUT -p tcp --dport 445 -j ACCEPT
iptables -I INPUT -p tcp --dport 139 -j ACCEPT
17. 重启smb服务
systemctl restart smb
测试
18. 在Windwos中测试:
打开我的电脑:Ctrl+E
输入: \\172.16.12.11\tech
19. 再Linux客户机上测试:
smbclient //172.16.12.11/public
smbclient //172.16.12.11/tech -U master
技术部经理tom,员工sunny,员工bill。
smbclient //172.16.12.11/tech -U tom
销售部:销售经理mike,员工sky,员工jane
smbclient //172.16.12.11/sales -U sky
20.上传文件(可选)
put <本地文件路径>