Linux samba多用户挂载
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多用户挂载的更多相关文章
- Linux基础二(挂载、关机重启与系统等级)
一.Linux 基础之挂载 1. 挂载和查询 1.1 挂载 什么叫挂载?装系统的时候要给硬盘分区,在 Windows 中要分 C 盘 D 盘 DEF 盘,这个操作我们叫做分配盘符,分配盘符之后我们就可 ...
- linux系统usb挂载
本次例程的环境是在FC6下,通过终端操作的. 注意要挂载U盘需要有管理员的权限. 切换成管理员,输入: su root 然后输入管理员密码,进行密码认证: 成功后,先在 /mnt 下建立一个名叫USB ...
- samba多用户
注意的点 1:安装 服务器 yum install -y samba* 客户端 yum install -y samba-client cifs-utils 服务器端和客户端网络能ping通 2 ...
- Day 9 Linux samba & ngnix
(摘) Samba服务 一.Samba简介 Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.SMB(Server Messages Block,信息服 ...
- RHEL6.5上Oracle ACFS与Linux samba一起使用时遇到的bug
RHEL上的Oracle ACFS与linux samba一起使用时遇到的bug 一.环境介绍: cat /etc/issue的结果为: Red Hat Enterprise Linux Server ...
- Linux下磁盘挂载
公司硬盘不够用了,新买了一个存储,需要挂载到现在的系统上.前期的步骤就不说了,运维全部搞定,无非是硬件和网络那一套,这里只说分配到本人后在Linux下如何挂载. 具体步骤如下: 1.查看是否已经分配 ...
- linux下的挂载点和分区是什么关系
Linux 使用字母和数字的组合来指代磁盘分区.这可能有些使人迷惑不解,特别是如果你以前使用“C 驱动器”这种方法来指代硬盘及它们的分区.在 DOS/Windows 的世界里,分区是用下列方法命名的: ...
- 借Windows说明Linux分区和挂载点[转]
在介绍Linux分区和挂载点前,我想先说一个Windows的例子,Windows大家都比较熟,再借这个例子来说明什么是Linux分区和挂载点. 1.消失了的分区 在WinPE下,我将一块硬盘分成一个主 ...
- Linux学习之挂载
linux的系统组织方式是——整个系统从根开始,按树形目录依次向下逐渐扩大,分类存放不同用途的文件,/读作“斜线”,英文slash:当其写作一个路径时,第一个/表示根,即root,其他的/表示路径分割 ...
随机推荐
- Firefox控制台日志转入文件
应该说这个需求并不常见-但有时候我的确想过,要是能知道Firefox此时在干吗就好了–有那么几次,该运行的脚本没有运行,状态条显示页面的加载并未完成,但你却永远等不到它. 意外地是,谷哥和度娘似乎并不 ...
- 解决Flask局域网内访问不了的问题
在服务器上使用http://127.0.0.1:5000可以访问,但是在局域网内通过服务器IP地址访问不了,解决办法为:设置Flask为任何地址均可以访问,post设置为‘0.0.0.0’, if _ ...
- python笔记(三)---文件读写、修改文件内容、处理json、函数
文件读写(一) #r 只读,打开文件不存在的话,会报错 #w 只写,会清空原来文件的内容 #a 追加写,不会请求,打开的文件不存在的话,也会帮你新建的一个文件 print(f.read()) #获取到 ...
- js调试工具及微博登录分析
js调试工具 网页 都是采用ajax 需要提交一些参数 断点 自己去直接断点 事件断点, network 方法 靠近边栏顶部的是Call Stack(调用堆栈)窗格.当代码在断点处暂停时,Call ...
- Redux 学习总结
1.Redux 设计理念 Web 应用是一个状态机,视图与状态是一一对应的 所有的状态,保存在一个对象里面 2.基本概念和API Redux 的核心就是 store, action, reducer ...
- 软件测试:2.Two Faulty Programs
软件测试:2.Two Faulty Programs Questions: 1.Identify the fault; 2.If possible, identify a test case that ...
- 反射 内省 BeanUtil 综合使用
package com.zsphp.domain; public class User { private String userId; private String userName; privat ...
- Linux 版 SecureCRT 界面变为 Windows 2000 风格的解决办法
SecureCRT 是一款非常好用的远程终端连接软件,支持 Windows.Linux.macOS 全平台.由于现在工作平台主要在 Linux 系统上,SecureCRT 也是必备软件.一开始安装的是 ...
- C#类与结构体的小结
1.定义不同 类使用class关键字来定义: 结构体用struct: 2.使用时的注意事项 ->结构体是值类型,类是引用类型 ->结构体中声明的变量不能做赋值操作,但是类可以. -> ...
- Three failed attempts of handling non-sequential data
The Progress of Products Classification Cause now we are considering to classify the product by two ...