1.windows与linux共享文件
实验概要:
2.samba的基本信息
名称 | 属性 |
---|---|
服务启动脚本 | smb.service |
主配置目录 | /etc/samba |
主配置文件 | /etc/samba.conf |
安全上下文 | samba_share_t |
端口 | 139 445 |
安装包 | samba samba-common |
3.samba的安装和启用
dnf install samba samba-common samba-client -y #安装samba
systemctl enable --now smb #samba服务启动
firewall-cmd --permanent --add-service=samba
firewall-cmd --reload #samba服务启用
4.samba用户建立
smbpasswd -a zx #建立samba用户
pdbedit -L #查看用户列表
pdbedit -x zx #删除用户
5.samba访问家目录
smbclient - L //172.25.254.20 -U westos
6.samba共享目录
mkdir /westos #创建共享目录
[root@westos_netfilesystem samba]# vim smb.conf
[haha] #共享名称
comment = westos dir #共享说明
path = /westos #共享路径
systemctl restart smb
测试:
smbclient //172.25.254.20/westos -U westos
在172.25.254.10中:
在172.25.254.20中:
在172.25.254.10中:
writable = yes
在172.25.254.20中;
在172.25.254.10中:
7.cifs文件系统权限管理
cifs文件系统挂载和自动挂载:
mount //172.25.254.20/zxdir /mnt -o username=westos,password=lee
用户/用户组写权限
chmod 777 /zxdir
vim /etc/samba/smb.conf
[zxdir]
comment = zxdir
path = /zxdir
#writeable = yes ##允许所有用户
write list = westos ##允许westos用户
write list = +westos ##允许组为westos的用户
systemctl restart smb
8.常用配置参数
writable = yes ##所有用户可写
write list = lee ##指定用户可写
write list = +lee|@lee ##指定组可写
valid users = lee ##指定可访问用户
valid users = +lee|@lee ##指定可访问组
是否显示共享
browseable = yes|no ##是否显示共享
允许匿名用户访问
map to guest = bad user ##写到全局设定中
guest ok = yes
指定此身份登陆的新建文件用户为超级用户
admin users = westos ##指定此身份登陆的新建文件用户为超级用户
访问控制
hosts allow = 172.25.254.30 ##对网段的主机均允许访问生效
hosts deny = 172.25.254.20 ##黑名单
9.多用户挂载
在客户端如果用root挂载方式samba服务,普通用户也可以访问,不安全
安装samba认证工具
dnf install cifs-utils -y ##安装samba认证工具
man mount.cifs ##查看操作
配置超级用户通过westos身份
vim /root/smbpass
username=westos ##超级用户通过westos认证身份
password=lee
chmod 600 smbpass
mount -o credentials=/root/smbpass,sec=ntlmssp,multiuser //172.25.254.20/zxdir /mnt
#credentials=/root/smbpass 指定认证文件
#sec=ntlmssp 指定认证类型
#multiuser 支持多用户
添加认证
cifscreds add -u lee 172.25.254.20 ##添加认证
排错
认证不存在用户后,再认证存在用户会报错
cifscreds clearall ##使用命令后即可排错