1. Samba服务简介
作用:
- 提供协议SMB,实现文件共享
- SMB:Server Messages Block,信息服务块
Samba基本信息:
- 服务启动脚本: smb.service
- 主配置目录: /etc/samba
- 主配置文件: /etc/samba.conf
- 安全上下文: samba_share_t
- 端口: 139 445
- 安装包: samba samba-common
2. Samba的安装与启用
- samba的安装: dnf install samba samba-common samba-client -y
- samba服务启动: systemctl enable --now smb
- samba服务启用:
- firewall-cmd --permanent --add-service=samba
- firewall-cmd --reload
测试: smbclient -L //192.168.43.20 ##当要输入root密码时请直接回车
3. Samba用户的建立
- samba用户必须是存在的用户
- samba用户的建立
- smbpasswd -a lee ##添加用户
- pdbedit -L ##查看用户列表
- pdbedit -x lee ##删除用户
4. Samba用户访问家目录
当selinux开启时:
setsebool -P samba_enable_home_dirs=1
在windows下:
\\192.168.0.20 ##访问
net use ##查看访问记录
net use * /del ##删除访问记录
在linux下:
smbclient //192.168.0.20/huayu -U huayu
5. Samba服务共享目录
mkdir /huayudir
touch /huayudir/file{1..3}
semanage fcontext -a -t samba_share_t '/huayudir(/.*)?'
restorecon -RvvF /huayudir/
vim /etc/samba/smb.conf
systemctl restart smb
测试:
smbclient //192.168.43.20/huayudir -U huayu
6. Samba的访问控制
- hosts allow 192.168.0.30 192.168.0. ##当写到单独共享时只对此共享生效
- hosts deny ##当写到【GLOBAL】时对samba整体生效
7. Samba的常用配置参数
- writable = yes ##可写
- write list = huayu ##指定用户可写
- write list = +huayu ##指定组可写
- write list = @huayu
- valid users = huayu ##指定访问用户
- valid users = +huayu|@huayu ##指定访问组
- browseable = yes|no ##是否隐藏共享
- map to guest = bad user ##写到全局设定中
- guest ok = yes ##允许匿名用户访问
- admin users = huayu ##指定此共享的超级用户身份
8. Samba的多用户挂载
在客户端如果用普通的挂载方式
没有通过用户验证的人也可以访问samba服务
vim /root/smbpass
mount -o credentials=/root/smbpass,sec=ntlmssp,multiuser //192.168.43.20/huayudir /mnt
#credentials=/root/smbpass 指定认证文件
#sec=ntlmssp 指定认证类型
#multiuser 支持多用户