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,其他的/表示路径分割 ...
随机推荐
- 在Spring Boot中使用 @ConfigurationProperties 注解
但 Spring Boot 提供了另一种方式 ,能够根据类型校验和管理application中的bean. 这里会介绍如何使用@ConfigurationProperties.继续使用mail做例子. ...
- C语言解决约瑟夫问题详解的代码
将开发过程中比较重要的一些内容做个收藏,下面的内容是关于C语言解决约瑟夫问题详解的内容,希望能对码农有帮助. #pragma once #include<vector> class PRO ...
- JAVA的单元测试技术
1.选定开发工具 选定eclipse为开发工具,用JAVA进行编程,实现此次测试. 2.编写需要被测试的java类 此次我们以顺序查找与二分查找法为例. package com.mycode.tuil ...
- sql语句case when 以及left()
select count(CASE jyje WHEN '1300' THEN '2' ELSE '1' END) as count from tpent_orders where cplx = 6 ...
- 用 Python 获取 B 站播放历史记录
用 Python 获取 B 站播放历史记录 最近 B 站出了一个年度报告,统计用户一年当中在 B 站上观看视频的总时长和总个数.过去一年我居然在 B 站上看了2600+个视频,总计251个小时,居然花 ...
- CUDA编程模型——组织并行线程2 (1D grid 1D block)
在”组织并行编程1“中,通过组织并行线程为”2D grid 2D block“对矩阵求和,在本文中通过组织为 1D grid 1D block进行矩阵求和.一维网格和一维线程块的结构如下图: 其中,n ...
- 实战ELK(9) Elasticsearch地理位置
地理坐标点(geo-point) 是指地球表面可以用经纬度描述的一个点.地理坐标点可以用来计算两个坐标位置间的距离,或者判断一个点是否在一个区域中.地理坐标点不能被动态映射(dynamic mappi ...
- html5自带表单验证
起因:今天无意中发现chrome的input框自带表单验证!于是就去试试firefox,惊奇的发现也有自带的验证提示,只不过两者的样式不一样 chrome中的样子: firefox中的样子: 发散:具 ...
- python shutil模块&random模块
shutil模块 import shutil shutil.copyfileobj(open("os_.py", "r"), open("os_2.p ...
- MySQL(Python+ORM)
本篇对于Python操作MySQL主要使用两种方式: 原生模块 pymsql ORM框架 SQLAchemy pymsql pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb ...