一 安装samba软件包
yum install samba samba-client -y
二 编辑samba的配置文件
1.samba配置文件默认存放在 /etc/samba/ 下
#进入samba配置文件所在目录
cd /etc/samba/
#可用ls命令查看
ls
2.可以将配置文件进行备份
#将文件"mv smb.conf smb.conf.bak"重命名命名为"smb.conf.bak"
mv smb.conf smb.conf.bak
#将文件"smb.conf.bak"中不包含"#"的行过滤出来,并将结果存入新文件"smb.conf"中
grep -v "#" smb.conf.bak > smb.conf
3.Samba文件共享
a.第一种情况:可匿名访问
#修改配置文件
vim smb.conf
#在文末添加以下内容:
[public]
path = /opt/public
public = yes
browsable = yes
writable = yes
create mask =0644
directory mask = 0755
#其中[public]是共享目录的名称, /opt/public 是共享文件夹的路径
修改完配置文件保存并退出
#创建目录
mkdir /opt/public
#对目录授权
chmod 777 /opt/public
#临时关闭防火墙服务
systemctl stop firewalld.service
#临时关闭SELinux服务
setenforce 0
#开启samba服务
systemctl start smb.service
利用windows11系统访问
b.第二种情况(需身份验证)
#进入配置文件所在目录
cd /etc/samba/
#修改配置文件
vim smb.conf
#在文末添加
[myshare]
path = /opt/shared
browseable = yes
create mask = 0644
directory mask = 0755
valid user = 00,01 #用户00和01有访问权限
write list = 00 #用户00有写入权限
修改完配置文件保存并退出,接下来需要创建samba用户(上图中的00,01)
#创建用户00并设置它的密码,这个密码是独立密码,不和登录密码冲突
useradd00
smbpasswd -a 00
#继续创建第二个账号01
useradd 01
smbpasswd -a 01
接下来创建共享文件目录并授权
#进入opt目录下
cd /opt/
#创建共享目录
mkdir shared
#给目录授予最大权限
chmod 777 shared/
#重启samba服务
systemctl restart smb.service
完成,可用windows系统机进行测试,本次是windows11
先使用00账号登录
可读可写,再使用01账户登录,此前可在cmd命令提示符中清除登录信息
当想要在myshare中创建文件时
可读不可写。
三 将samba服务添加至防火墙规则之外,保证防火墙开启状态也可通过samba。
#添加防火墙规则(可以使用两种规则iptables/firewalld进行配置,下面用firewalld进行演示)
firewall-cmd --permanent --zone=public --add-service=samba
#重新加载
firewall-cmd --reload