网络文件系统【1】(samba的访问控制、常用配置参数)

  • samba服务简介
    共享文件系统,存储分离技术,增加数据交互的稳定性,共享的是磁盘,或文件系统的读写权力。
    smb = Server Message Block Sum (服务器消息块 Sum公司开发)
    cifs = Common Internet File System Miscrosoft (通用因特网文件系统 微软公司开发)
    windows系统共享文件时用到的协议smb (smb是由miscrosoft+sum)
    Linux使用的协议是cifs。
  • smb服务主要的作用是是使客户机可以通过该服务访问服务器上的文件共享系统;
    cifs 客户端可以访问服务器上的文件并要求服务器提供服务,cifs是 smb 的一种特殊实现,所以 smb 和 cifs 的客户端之间可以相互访问。

一、samba基本信息

  • 服务启动脚本:smb.service
    主配置目录: /etc/samba
    主配置文件: /etc/smb.conf
    安全上下文:samba_share_t
    端口:139、445
    安装包:samba、samba-common
  • 1、window系统共享文件给linux系统:
    在window系统建立所要共享目录westos,设定用户名和密码,且设定目录权限为完全控制、更改、读取,window系统的ip:172.25.254.94。对于windows系统,在运行里面输入\172.25.254.94即可看到共享的文件。
    在linux系统中访问windows共享目录的方式:linux系统安装samba-client(selinux 开启状态下);
    smbclient -L //172.25.254.94 -U administrator :-U指定用户为window系统的用户administator,-L:表示查看用户列表,输入密码之后,即可看到window系统共享的内容。(没有密码会直接拒绝访问)
    在这里插入图片描述
    可以用以上客户端的方式访问(必须要输入密码),也可用挂载的方式,将windows的共享目录挂载到/mnt目录,这样就实现了/mnt目录和系统存储是分离的,
    在这里插入图片描述
    用户可以在/mnt目录下创建(创建的文件其实都在windows系统的/westos目录中)和删除文件
    在这里插入图片描述
  • 2、linux系统共享文件给windows系统:
    在selinux 是开启状态下,在根下建立westos目录
    在这里插入图片描述
    安装 samba-common samba-client samba软件
    在这里插入图片描述
    samba服务启动
    在这里插入图片描述
    将主配置目录中的模板文件复制作为主配置文件(内容更详细)
    在这里插入图片描述
    查看samba手册
    在这里插入图片描述
    ls -Zd /westosdir 查看目录的安全上下文,将目录的安全上下文修改为samba_share_t ,刷新设定
    在这里插入图片描述
  • 1、共享自建目录,在samba主配置文件/etc/samba/smb.conf 中设定目录可写,修改目录的安全上下文之后,即可成功访问;
    编辑smb.conf文件,指定共享目录名、说明、路径、目录可写
    [WESTOS] :共享名称
    comment = westos:共享说明
    path = /westos:共享路径
    在这里插入图片描述
    重启smb服务后设定生效,修改目录权限为777,
    在这里插入图片描述
  • samba用户的建立
    samba用户必须是被地存在的用户
    在这里插入图片描述
    smbpasswd -a westos:添加用户(建立smb账号)
    在这里插入图片描述
    pdbedit -L :查看用户列表
    pdbedit -x westos:删除用户
    在这里插入图片描述
    在这里插入图片描述
    westosb的IP为172.25.254.88
    在这里插入图片描述
    linux系统客户端使用方式两种
    在这里插入图片描述
    1、用客户端的方式访问(必须要输入密码),查看用户列表
    在这里插入图片描述
    2、用挂载的方式,将linux系统的共享目录挂载到 /mnt目录
    在这里插入图片描述
    在这里插入图片描述
    在windows系统,打开运行,输入//172.25.254.88 ,输入westosb主机中的用户账号和密码进行访问,即可看到linux系统共享的目录,在目录中建立的文件,在linux系统的共享目录下依然存在。当再次访问时,不需要输入用户名和密码。
    net use :查看访问记录 ;
    net use * /del :删除访问记录。在这里插入图片描述

二、samba的访问控制

  • 共享系统目录/mnt
    在这里插入图片描述
    列出westosb的samba服务所共享的目录
    在这里插入图片描述
    可以看到 MNT 共享目录名,但是进入后不能显示内容,这是因为 selinux 开启时导致的,但由于是系统目录,不能修改目录安全上下文,否则会造成一些系统问题
    在这里插入图片描述
    设定selinux不对目录进行影响 :
    方法一:将selinux设定为permissive模式;
    方法二:取消selinux对samba服务读写文件的限制:开启 setsebool -p samba_export_all_rw
    在这里插入图片描述
    此时selinux在强制模式下,用户也可以访问samba服务 共享目录的内容
    在这里插入图片描述
    当不做任何限制时,用户自建目录和系统目录都可以被任意挂载;(客户端westosa可以挂载服务器westosb的共享目录)在这里插入图片描述当设定全局白名单后,只有IP为172.25.254.88(westosb)的主机能挂载samba的共享目录,其余主机挂载时会出现设备不存在的报错信息;
    在这里插入图片描述
    在这里插入图片描述
    westosa不能挂载samba的共享目录
    在这里插入图片描述
    当设定全局黑名单后,除了IP为172.25.254.88的主机,其余主机都能挂载samba的共享目录,88主机在挂载时会出现设备不存在的报错信息;
    在这里插入图片描述
    在这里插入图片描述
    westosa主机能挂载samba的共享目录
    在这里插入图片描述

三、samba的常用配置参数

  • 将之前的设定注释
    在这里插入图片描述writable = yes:可写
    当设定局部白名单后(对于/westos目录的访问进行限制),只有88主机可以挂载/westos目录(只对该共享目录的挂载有影响)
    在这里插入图片描述
    将目录权限设定如下
    在这里插入图片描述
    以哪个用户的身份挂载,在/mnt目录下建立的文件,文件的拥有者和拥有组是root,但在/westos目录中,文件的拥有者和拥有组就是挂载的用户
    在这里插入图片描述
    在这里插入图片描述
    westosa不能挂载共享目录
    在这里插入图片描述
    将写权限注释
    在这里插入图片描述
    此时将不能在/mnt目录写入文件
    在这里插入图片描述
    write list = westos:指定只有westos用户可以对共享目录/westos进行写操作,此时重新以lee的用户身份挂载共享目录到/mnt,将不能在/mnt目录中建立文件
    在这里插入图片描述
    在这里插入图片描述
    westos用户可以对共享目录/westos进行写操作
    在这里插入图片描述
    write list = +(@)westos,指定westos组的成员可以对共享目录/westos进行写操作
    在这里插入图片描述
    修改lee的用户组为westos之后,重新以lee的用户身份挂载共享目录到/mnt,此时lee也可以在 /mnt目录中建立文件
    在这里插入图片描述
    valid users = westos : 指定westos可以访问(挂载)这个共享目录,设定完成,lee将不能挂载共享目录在这里插入图片描述
    在这里插入图片描述
    valid users = +(@)westos : 指定westos组的成员可以访问(挂载)这个共享目录,设定完成,lee将可以挂载共享目录
    在这里插入图片描述
    在这里插入图片描述
    browseable = yes:设定共享目录是否隐藏,设定为yes之后,smbclient -L //172.25.254.103 可以看到共享目录在这里插入图片描述
    在这里插入图片描述
    设定为no之后在这里插入图片描述
    smbclient -L //172.25.254.103 将看不到共享目录,但仍然可以被挂载和使用
    在这里插入图片描述
    在这里插入图片描述
    匿名用户默认不能访问共享目录的内容(smbclient //172.25.254.103)
    在这里插入图片描述
    guest ok = yes:设定允许匿名用户访问
    在这里插入图片描述
    加上map to guest = bad user:将没有身份的用户映射为guest用户
    在这里插入图片描述
    此时匿名用户可以访问共享目录
    在这里插入图片描述
    admin users = lee:设定lee用户在共/mnt建立文件时,在/westos目录中,所建立文件拥有者的身份是root
    在这里插入图片描述
    在这里插入图片描述
  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值