samba

来源:互联网 发布:怎么找淘宝刷手的工作 编辑:程序博客网 时间:2024/06/10 03:14

1.samba作用
提供cifs协议实现共享文件

2.安装
yum install samba samba-common samba-client -y
这里写图片描述
systemctl start smb ##开启smb服务
systemctl enable smb ##开机启动smb服务

3.添加smb用户
smb用户必须时本地用户
smbpasswd -a student
New SMB password: #输入smb当前用户密码
Retype new SMB password: #确认密码
这里写图片描述
pdbedit -L #查看smb用户信息
这里写图片描述
pdbedit -x smb用户 #删除smb用户
smbclient -L 172.25.254.106 -U student ##查看samba共享
这里写图片描述
setenforce 0 ##设定selinux为警告状态
smbclient //172.25.254.106/student -U student ##登录smb用户
这里写图片描述
setenforce 1 ####设定selinux为强制状态
getsebool -a | grep samba
这里写图片描述
setsebool -P enable_samba_home_dirs on ##在selinux中设定smb用户可以访问自己的家目录
smbclient //172.25.254.106/student -U student
这里写图片描述
mount -o username=student //172.25.254.106/student /mnt ##挂载samba
这里写图片描述

4.共享目录的基本设定
vim /etc/samba/smb.conf ##编辑samba配置文件
workgroup = LINUX ##更改workgroup
这里写图片描述
smbclient -L 172.25.254.106 -U student ###查看samba共享
这里写图片描述
vim /etc/samba/smb.conf
hosts allow = 172.25.254.107 ##只允许172.25.254.107用户Samba共享
这里写图片描述
测试:主机IP=172.25.254.206
这里写图片描述
hosts deny = 172.25.254.6 ##只拒绝172.25.254.6主机samda共享
这里写图片描述
测试:主机IP=172.25.254.6
这里写图片描述
vim /etc/samba/smb.conf
当共享目录为用户自建立目录时
[DATA]共享名称
comment = 对共享目录的描述
path = 共享目录的绝对路径
这里写图片描述
systemctl restart smb
查看共享目录
这里写图片描述
semanage fcontext -a -t samba_share_t ‘目录名称(/.*)?’
restorecon -RvvF 目录名称
这里写图片描述
browseable = no ##隐藏共享目录
这里写图片描述
查看共享目录
这里写图片描述

当共享目录为系统建立目录
[CONFIG]共享名称
comment = local directory /mnt
path = /mnt
这里写图片描述
查看共享目录
这里写图片描述
setsebool -P samba_export_all_ro on #只读共享
当samba_export_all_ro 打开时,系统自建的目录也不需更改安全上下文,即可共享
这里写图片描述

5.samba的配置参数

匿名用户访问
guest ok = yes
这里写图片描述
这里写图片描述
126 map to guest = bad user ##将无身份的用户设定为guest,使得匿名用户可挂载
这里写图片描述
这里写图片描述
永久挂载
vim /etc/fstab
这里写图片描述
mount -a ##让挂载生效
这里写图片描述
访问控制
hosts allow = #仅允许
hosts deny = #仅拒绝
valid users = #当前共享的有效用户
valid users = student #当前共享的有效用户为student
这里写图片描述
这里写图片描述
valid users = @student #当前共享的有效用户为student组
valid users = +westos #当前共享的有效用户为westos组
这里写图片描述
这里写图片描述
读写控制
所有用户均可写
chmod o+w /westos
setsebool -P samba_export_all_rw on #读写共享
这里写图片描述
vim /etc/samba/smb.conf
writable = yes
这里写图片描述
这里写图片描述
设定指定用户可写
write list = student #可写用户
这里写图片描述
这里写图片描述
这里写图片描述
write list = +student #可写用户组
write list = @student
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
admin users = westos #共享的超级用户指定,当用westos用户共享
时,建立文件,文件的所有人为root,其他用户共享时,建立文件,文件的所有人为其他用户
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

6.smb多用户挂载
客户端
vim /root/smbpassword
username=student
password=student
这里写图片描述
chmod 600 /root/smbpassword
这里写图片描述
yum install cifs-utils -y
这里写图片描述
mount -o credentials=/root/smbpasswd,multiuser,sec=ntlmssp //172.25.254.100/smbpassword /mnt/
## credentials=/root/haha 指定挂载时所用到的用户文件
##multiuser 支持多用户认证
#sec=ntlmssp 认证方式为标准smb认证方式
su - kiosk
ls /mnt
ls: cannot access /mnt: Permission denied #因为没有作smb的认证所以无法访问smb共享
这里写图片描述
cifscreds add -u westos 172.25.254.106
Password: ##smb用户westos的密码
这里写图片描述
ls /mnt
这里写图片描述