samba 多用户挂载

通过multiuser挂载选项,使用基于密码验证和cifscreds实现访问控制
在默认情况下,samba共享挂载后,是通过挂载时的验证来实现对挂载资源的访问控制。通过新的multiuser挂载选项,可以实现对访问挂载后的共享的每个用户单独的验证,实现权限隔离。
注意:
要实现多用户挂载,需要客户端和服务端都要有相应的账号,并且服务端把相应账号添加到samba账号中。
多用户挂载需要client和server都存在一个相同的用户,且用户的uid必须相同

建立实验环境:

实验说明:在基于<Linux samba服务搭建,URL:https://www.cnblogs.com/despotic/p/10727111.html>的基础上,需要在dekstop0机器创建brian用户和rob用户,用户uid和server0机器保持一致

执行实验环境配置脚本,可忽略

[root@server0 ~]# lab smbmultiuser setup
[root@desktop0 ~]# lab smbmultiuser setup

client

1、安装挂载工具
[root@desktop0 ~]# yum install cifs-utils -y
2、创建认证文件:填写挂载时候用的用户名和密码
[root@desktop0 ~]# echo 'username=brian' >> /root/smb-multiuser.txt
[root@desktop0 ~]# echo 'password=redhat' >> /root/smb-multiuser.txt
3、建立挂载点:
[root@desktop0 ~]# mkdir -p /mnt/multiuser
4、编辑/etc/fstab文件实现开机自动挂载
[root@desktop0 ~]# vim /etc/fstab
...
//server0/smbshare /mnt/multiuser cifs credentials=/root/smb-multiuser.txt,multiuser,sec=ntlmssp 0 0
...
解释:
  • //server0/smbshare 启动server0也可以写作server0.example.com因为最后评分脚本只认server0所以就写server0
  • cifs 通用信息网络文件系统,smb的挂载类型
  • credentials= 刚开始时创建的用户密码文件,开机挂载的时候不用手动去输入账户密码,默认用该文件中的用户和密码
  • sec=ntlmssp

测试:

[root@desktop0 ~]# mount -a
[root@desktop0 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 10G 3.1G 7.0G 31% /
devtmpfs 223M 0 223M 0% /dev
tmpfs 238M 0 238M 0% /dev/shm
tmpfs 238M 8.8M 230M 4% /run
tmpfs 238M 0 238M 0% /sys/fs/cgroup
//server0/smbshare 10G 3.1G 7.0G 31% /mnt/multiuser
切换到brian用户进行测试
[root@desktop0 ~]# su brian
[brian@desktop0 ~]$ touch /mnt/multiuser/test.file
touch: cannot touch ‘/mnt/multiuser/test.file’: Permission denied
权限不足,因为实现多用户挂载之后,想访问挂载后的文件,必须实现再次验证
再次验证一下
[brian@desktop0 ~]$ cifscreds add server0
Password: ---> redhat
[brian@desktop0 ~]$ echo "hello" >> /mnt/multiuser/test.txt
[brian@desktop0 ~]$ cat /mnt/multiuser/test.txt
hello

此时可以看见已经可以写入和读取文件
本实验到此结束

评分通过

[root@desktop0 ~]# lab smbmultiuser grade
Checking for cifs-utils rpm package... PASS
Checking for /mnt/multiuser mountpoint... PASS
Checking for multiuser fstab entry... PASS
Checking for multiuser mount... PASS Overall result: PASS
Congratulations! You've passed all requirements.

Linux samba多用户挂载的更多相关文章

  1. Linux基础二(挂载、关机重启与系统等级)

    一.Linux 基础之挂载 1. 挂载和查询 1.1 挂载 什么叫挂载?装系统的时候要给硬盘分区,在 Windows 中要分 C 盘 D 盘 DEF 盘,这个操作我们叫做分配盘符,分配盘符之后我们就可 ...

  2. linux系统usb挂载

    本次例程的环境是在FC6下,通过终端操作的. 注意要挂载U盘需要有管理员的权限. 切换成管理员,输入: su root 然后输入管理员密码,进行密码认证: 成功后,先在 /mnt 下建立一个名叫USB ...

  3. samba多用户

    注意的点 1:安装 服务器  yum install -y samba* 客户端  yum install -y samba-client  cifs-utils 服务器端和客户端网络能ping通 2 ...

  4. Day 9 Linux samba & ngnix

    (摘) Samba服务 一.Samba简介  Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.SMB(Server Messages Block,信息服 ...

  5. RHEL6.5上Oracle ACFS与Linux samba一起使用时遇到的bug

    RHEL上的Oracle ACFS与linux samba一起使用时遇到的bug 一.环境介绍: cat /etc/issue的结果为: Red Hat Enterprise Linux Server ...

  6. Linux下磁盘挂载

    公司硬盘不够用了,新买了一个存储,需要挂载到现在的系统上.前期的步骤就不说了,运维全部搞定,无非是硬件和网络那一套,这里只说分配到本人后在Linux下如何挂载. 具体步骤如下: 1.查看是否已经分配 ...

  7. linux下的挂载点和分区是什么关系

    Linux 使用字母和数字的组合来指代磁盘分区.这可能有些使人迷惑不解,特别是如果你以前使用“C 驱动器”这种方法来指代硬盘及它们的分区.在 DOS/Windows 的世界里,分区是用下列方法命名的: ...

  8. 借Windows说明Linux分区和挂载点[转]

    在介绍Linux分区和挂载点前,我想先说一个Windows的例子,Windows大家都比较熟,再借这个例子来说明什么是Linux分区和挂载点. 1.消失了的分区 在WinPE下,我将一块硬盘分成一个主 ...

  9. Linux学习之挂载

    linux的系统组织方式是——整个系统从根开始,按树形目录依次向下逐渐扩大,分类存放不同用途的文件,/读作“斜线”,英文slash:当其写作一个路径时,第一个/表示根,即root,其他的/表示路径分割 ...

随机推荐

  1. Firefox控制台日志转入文件

    应该说这个需求并不常见-但有时候我的确想过,要是能知道Firefox此时在干吗就好了–有那么几次,该运行的脚本没有运行,状态条显示页面的加载并未完成,但你却永远等不到它. 意外地是,谷哥和度娘似乎并不 ...

  2. 解决Flask局域网内访问不了的问题

    在服务器上使用http://127.0.0.1:5000可以访问,但是在局域网内通过服务器IP地址访问不了,解决办法为:设置Flask为任何地址均可以访问,post设置为‘0.0.0.0’, if _ ...

  3. python笔记(三)---文件读写、修改文件内容、处理json、函数

    文件读写(一) #r 只读,打开文件不存在的话,会报错 #w 只写,会清空原来文件的内容 #a 追加写,不会请求,打开的文件不存在的话,也会帮你新建的一个文件 print(f.read()) #获取到 ...

  4. js调试工具及微博登录分析

    js调试工具 网页 都是采用ajax  需要提交一些参数 断点 自己去直接断点 事件断点, network 方法 靠近边栏顶部的是Call Stack(调用堆栈)窗格.当代码在断点处暂停时,Call ...

  5. Redux 学习总结

    1.Redux 设计理念 Web 应用是一个状态机,视图与状态是一一对应的 所有的状态,保存在一个对象里面 2.基本概念和API Redux 的核心就是 store, action, reducer ...

  6. 软件测试:2.Two Faulty Programs

    软件测试:2.Two Faulty Programs Questions: 1.Identify the fault; 2.If possible, identify a test case that ...

  7. 反射 内省 BeanUtil 综合使用

    package com.zsphp.domain; public class User { private String userId; private String userName; privat ...

  8. Linux 版 SecureCRT 界面变为 Windows 2000 风格的解决办法

    SecureCRT 是一款非常好用的远程终端连接软件,支持 Windows.Linux.macOS 全平台.由于现在工作平台主要在 Linux 系统上,SecureCRT 也是必备软件.一开始安装的是 ...

  9. C#类与结构体的小结

    1.定义不同 类使用class关键字来定义: 结构体用struct: 2.使用时的注意事项 ->结构体是值类型,类是引用类型 ->结构体中声明的变量不能做赋值操作,但是类可以. -> ...

  10. Three failed attempts of handling non-sequential data

    The Progress of Products Classification Cause now we are considering to classify the product by two ...