samba服务

一、samba的作用
samba提供cifs协议来共享文件
可以在linux操作系统与windos操作系统之间来共享文件
1.下载并启动samba
yum install samba samba-common samba-client -y ##安装安装samba及相关组件
systemctl start smb ##启动samba
systemctl stop firewalld.service ##关闭防火墙
2.添加用户
smbpasswd -a 用户 ##添加用户,用户必须是本机存在的用户
pdbedit -x smb用户 #删除smb用户
这里写图片描述
pdbedit -L ##查看samba的用户
这里写图片描述
3.基本应用
smbclient -L //172.25.254.105 -U student ##查看172.25.254.105共享出来的文件,默认共享出来的是用户的家目录
这里写图片描述
smbclient //172.25.254.105/student -U student ##进入172.25.254.105共享的student目录中,可以进行一系列操作
这里写图片描述
4.特殊应用
samba 可以挂载
这里写图片描述
挂载之后就可以实现,存储分离,当我主机1挂载主机2的samba,当我的主机1出现问题后,我的数据还是存在的,这样可以保证我的数据安全
samba的开机自动挂载
配置/etc/fstab文件加入下面语句
//172.25.254.105/student /mnt cifs defaults,username=student,password=westos 0 0 ##开机自动挂载

二、samba的配置
samba的主配置文件为:/etc/samba/smb.conf
要增加发布目录可以在配置文件最后加上下面配置
[WESTOS] ##目录名
comment = share westos ##描述
path = /westos ##目录的绝对路径
编写完成后查看,我们加入的westos分享目录就出来了
这里写图片描述
*应注意selinux的问题
selinux会阻止我们的服务,因为我们所分享的目录与samba所要求的安全上下文不一致,这时我们需要不同的方法来解决这种问题
–当我们共享的是自己建立的目录时,我们可以用更改selinux的安全上下文来取消限制,安全上下文为samba_share_t
semanage fcontext -a -t samba_share_t ‘目录名称(/.*)?’
restorecon -RvvF 目录名称
–当我们共享的时系统的目录时,如果更改安全山下文就会使其他的应用没法使用,这时我们需要更改selinux对应用的布尔值,来取消其对应用的限制
getsebool -a | grep samba ##查看samba有那些权限可以开放
setsebool -P 权限名 on | off ##开关权限

三、用户访问控制
1.ip登陆控制
用户黑名单hosts deny = ip ##只允许某ip登陆
用户白名单hosts allow = ip ##只禁止某ip登陆
这里写图片描述
测试
这里写图片描述
2.用户登陆控制
在配置文件的分享块里,增加
valid users = student ##只允许sudent用户登陆,studnet用户时samba中存在的用户
valid users = @student ##允许student用户组登陆
valid users = +student ##允许studnet用户组登陆
这里写图片描述
测试
这里写图片描述
3.匿名用户登陆
编写配置文件添加
guest ok = no ##添加到分享块里
map to guest = bad user
这里写图片描述
这里写图片描述
测试 输入密码时直接敲回车
这里写图片描述
4.读写控制
首先更改写入目录的权限使其可写
chmod o+w /mnt
更改selinux相关布尔值
setsebool -P samba_export_all_rw on
更改配置文件/etc/samba/smb.conf
writable = yes ##分享块中添加
这里写图片描述
测试
未更改权限之前
这里写图片描述
更改权限后
这里写图片描述
指定用户可写
更改配置文件,添加
write list = studnet ##跟上面一样+ @ 表示组
这里写图片描述
测试,其他用户登陆后,不能写入
这里写图片描述

四、多用户挂载
在客户端创建编辑
vim /root/smbpasswd ##文件名随便
chmod 600 /root/smbpasswd ##密码文件一般使用600
yum install cifs-utils -y ##下载插件
mount -o credentials=/root/smbpasswd,multiuser,sec=ntlmssp //172.25.254.105/student /mnt/
credentials ##指定挂载时用到的密码文件
multiuser ##支持多用户认证
sec=ntlmssp ##认证方式为标准smb认证方式
这里写图片描述
su - student 切换到普通用户
cd /mnt
ls: cannot access /mnt: Permission denied ##因为没有smb的认证所以不能查看smb的共享
cifscreds add -u student 172.25.254.105
使用此命令来认证
这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值