CentOS 安装 Samba服务器(多用户组、多用户有不同的访问权限)

2023-05-16

 

 

增加smb用户
[root@localhost sir01]#smbpasswd -a linuxsir 

 

查看 smb 现有用户

pdbedit -L
 

验证用户登录文件夹

 smbclient //192.168.101.93/forlder  -U username 

 

Windows 映射

网络文件夹目前是以其他用户名和密码进行映射的——映射盘更换登录用户名问题

dos窗口输入命令:net use 即可看到当前已建立的连接

然后我们输入命令:net use * /delete 来结束所有的当前所有的连接。然后再输入命令: Y 来结束所有连接;

然后在按照更换登录映射盘密码的方法来重新登录就完美解决了。

 

1。首先服务器采用用户验证的方式,每个用户可以访问自己的宿主目录,并且只有该用户能访问宿主目录,并具有完全的权限,而其他人不能看到你的宿主目录。

2。建立一个caiwu的文件夹,希望caiwu组和lingdao组的人能看到,network02也可以访问,但只有caiwu01有写的权限。

3。建立一个lindao的目录,只有领导组的人可以访问并读写,还有network02也可以访问,但外人看不到那个目录

4。建立一个文件交换目录exchange,所有人都能读写,包括guest用户,但每个人不能删除别人的文件。

5。建立一个公共的只读文件夹public,所有人只读这个文件夹的内容。

好,我们先来前期的工作

建立3个组:
#groupadd caiwu

#groupadd network

#groupadd lingdao


添加用户并加入相关的组当中:
#useradd caiwu01 -g caiwu

#useradd caiwu02 -g caiwu

#useradd network01 -g network

#useradd network02 -g network

#useradd lingdao01 -g lingdao

#useradd lingdao02 -g lingdao

然后我们使用smbpasswd -a caiwu01的命令为6个帐户分别添加到samba用户中

#mkdir /home/samba

#mkdir /home/samba/caiwu

#mkdir /home/samba/lingdao

#mkdir /home/samba/exchange

#mkdir /home/samba/public

我们为了避免麻烦可以在这里把上面所有的文件夹的权限都设置成777,我们通过samba灵活的权限管理来设置上面的5点要求。

以下是我的smb.conf的配置文件

[global]

workgroup = bmit 

#我的网络工作组

server string = Frank's Samba File Server

#我的服务器名描述

security = user

#使用用户验证机制

encrypt passwords = yes
smb passwd file = /etc/samba/smbpasswd
#使用加密密码机制,在win95和winnt使用的是明文

其他的基本上可以按照默认的来。

[homes]
comment = Home Directories
browseable = no
writable = yes
valid users = %S
create mode = 0664
directory mode = 0775

#homes段满足第1条件

[caiwu]
comment = caiwu
path = /home/samba/caiwu
public = no
valid users = @caiwu,@lingdao,network02
write list = caiwu01
printable = no

#caiwu段满足我们的第2要求

[lingdao]
comment = lingdao
path = /home/samba/lingdao
public = no
browseable = no
valid users = @lingdao,network02
printable = no

#lingdao段能满足我们的第3要求

[exchage]
comment = Exchange File Directory
path = /home/samba/exchange
public = yes
writable = yes

#exchange段基本能满足我们的第4要求,但不能满足每个人不能删除别人的文件这个条件,即使里设置了mask也是没用,其实这个条件只要unix设置一个粘着位就行

chmod -R 1777 /home/samba/exchange 

注意这里权限是1777,类似的系统目录/tmp也具有相同的权限,这个权限能实现每个人能自由写文件,但不能删除别人的文件这个要求

[public]
comment = Read Only Public
path = /home/samba/public
public = yes
read only = yes

#这个public段能满足我们的第5要求。

到此为止我们的设置已经能实现我们的共享文件要求,记得重启服务哦

#/etc/rc.d/init.d/smb restart

如果大家没有winodws,不妨先用samba的cilent端命令来测试一下

命令的用法我在这里只举几个例子,具体的大家去试验

smbclient -L 服务器ip -N 

guest帐户查询你的服务器的samba共享情况,你可以检验一下是否lingdao目录时候能被guest帐户看到,应该是看不到的,当然你也可以以某个用户的名义查看

smbclient -L 服务器ip -U caiwu01

系统会提示密码,只要输入smb密码就行。

smbclient //服务器ip/caiwu -U caiwu01

#以caiwu01用户的名义登录caiwu目录

smbmount //服务器ip/caiwu /mnt/caiwu -o username=caiwu01
 

#把服务器的财务目录映射到本地的/mnt/caiwu目录。

 

测试

smbclient -L //localhost/share 或者 
  smbclient-L \\127.0.0.1 -Umyname //这时输入的密码就是你刚才设置的samba密码

使用

1、windows用户
在我的电脑地址栏里输入\\192.168.1.1访问;也可windows+R输入\\192.168.1.1;

登录后可以右击映射到本地驱动器。

net use * /delete
2、linux

(1)使用smbclient

#smbclient//192.168.1.1/Normal -U user%passwd
(2)挂载到某个目录使用
#mkdir/mnt/share
#mount -o username=youruser,password=passwd //192.168.1.1/Normal  /mnt/share

设置开机挂载将如下命令写入/etc/fstab

//192.168.1.1/share  /mnt/ml45  cifs  defaults,auto,username=youruser,password=passwd 0 0

 

然后#mount -a

 

如果出现不能访问

1.关闭防火墙

centos7 关闭防火墙

sudo systemctl stop firewalld 临时关闭

sudo systemctl disable firewalld ,然后reboot 永久关闭

sudo systemctl status  firewalld 查看防火墙状态

2.

SAMBA在CentOS6上出现NT_STATUS_ACCESS_DENIED错误的解决方法

Xizi posted @ 2013年5月11日 23:29 in 未分类 with tags SAMBA SMB Centos NT_STATUS_ACCESS_DENIED , 16745 阅读

 

NT_STATUS_ACCESS_DENIED listing \*
在CENTOS上配了个SAMBA与WINDOW共享文件。
 
一访问共享目录就”NT_STATUS_ACCESS_DENIED listing \*“ ,找了好久,发现是SELINUX阻挡了。
 
 
 
[root@linux tmp]# smbclient //127.0.0.1/sambar -U sambar%sambar
Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.5.10-114.el6]
smb: \> ls
NT_STATUS_ACCESS_DENIED listing \*
 
                52265 blocks of size 1048576. 48406 blocks available
 
解决方法一:
 
关闭SELIUNX
 
[root@linux /]# getenforce   ;查看当前状态
Enforcing 
 
[root@linux /]# setenforce 0;
 
 
 
SELINUX几种状态表示:
 
enforcing:强制模式,代表 SELinux 运行中,且已经正确的开始限制 domain/type 了;
permissive:宽容模式:代表 SELinux 运行中,不过仅会有警告信息并不会实际限制 domain/type 的存取。这种模式可以运来作为 SELinux 的 debug 之用;
disabled:关闭,SELinux 并没有实际运行。
 
 
 
解决方法二:
 
更改selinux的策略
 
 

开机关闭SELinux
编辑/etc/selinux/config文件,如下图,将SELINUX的值设置为disabled。下次开机SELinux就不会启动了。

 

CentOS7中Samba环境搭建实录

https://blog.csdn.net/wc1695040842/article/details/91866500

启动Samba服务
[root@samba-server ~]# systemctl start smb
[root@samba-server ~]# systemctl enable smb
Created symlink from /etc/systemd/system/multi-user.target.wants/smb.service to /usr/lib/systemd/system/smb.service.
[root@samba-server ~]# systemctl restart smb
[root@samba-server ~]# systemctl status smb
 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CentOS 安装 Samba服务器(多用户组、多用户有不同的访问权限) 的相关文章

  • VS2019 error C4996: ‘scanf‘: This function or variable may be unsafe 错误

    目录 一 异常错误二 原因三 解决方法1 替换scanf函数2 添加宏定义3 关闭安全开发生命周期 SDL 检查 一 异常错误 span class token operator span error span class token co
  • VS2019 error C4703: 使用了可能未初始化的本地指针变量 错误

    目录 一 异常错误二 原因三 解决方法1 关闭安全开发生命周期 SDL 检查2 或者将指针变量初始化为nullptr 一 异常错误 error C4703 span class token operator span 对一个潜在的未初始化的
  • VS2019 高级保存设置UTF-8编码-源代码乱码问题

    目录 一 异常错误二 原因三 解决方法 一 异常错误 发现通过VS2019编译的 c文件 xff0c 在Linux中用shell运行时 xff0c 会出现中文乱码的情况 二 原因 本以为是终端编码格式问题 xff0c 后来发现是最初编译器编
  • Linux 终端编译后运行.c/.cpp文件中文乱码问题

    目录 一 异常错误二 原因三 解决方法1 首先确保源代码编码格式是UTF 82 确保Linux运行语言支持中文 一 异常错误 发现通过VS2019编译的 c文件 xff0c 在Linux中用shell运行时 xff0c 终端会出现中文乱码的
  • 「MySQL」从零到删库

    目录 零 数据库的产生 什么是数据库 database抛出问题 xff0c 数据库的产生数据库萌芽阶段的发展历程CRUD层次模型网状模型关系型数据库企业和我们都选什么数据库呢 xff1f 详见 xff1a 零 数据库的产生 一 安装 连接以
  • 用python合并pdf,并添加书签

    之前得到了很多文章的pdf xff0c 现在需要把它们合到一个pdf文件中 使用python库pypdf2可以实现这个功能 首先要安装 pip install pypdf2 然后运行下面的示例 python mergePDF py merg
  • 0:数据库的产生-MySQL

    目录 0 1 什么是数据库 database0 2 抛出问题 xff0c 数据库的产生0 3 数据库萌芽阶段的发展历程0 4 CRUD0 5 层次模型0 6 网状模型0 7 关系型数据库0 8 企业和我们都选什么数据库呢 xff1f 0 1
  • 1:安装、连接以及配置-MySQL

    目录 1 1 windows两种安装方式 xff0c 入门选手推荐第二种 win10演示 1 2 更改终端 xff0c 放弃cmd作为主要终端 xff0c 使用一流终端1 3 MYSQL服务的启动与停止1 4 连接mysql1 5 初始化d
  • 2:数据库的基本操作-MySQL

    目录 2 1 数据库的显示讲解2 2 创建数据库1 创建数据库2 创建带有关键字的数据库 xff08 不推荐 xff09 3 判断并创建一个不知道是否存在的数据库 2 3 删除数据库1 删除数据库2 如果存在则删除数据库 2 4 查看创建的
  • 3:表的基本操作-MySQL

    目录 3 1 提出问题 xff0c 引入 表 的概念与思维模式 table3 2 引用数据库和查看数据库中的表1 引用数据库2 查看数据库中的表 3 3 创建表3 4 创建表 xff08 企业用 xff0c 有B格 xff09 3 5 查看
  • 4:数据操作-MySQL

    目录 4 1 插入数据1 插入数据2 数据的自动添加 xff1a NULL3 default的使用4 省略自增 4 2 一次性插入多条数据4 3 删除数据1 删除2 条件删除 4 4 清空表1 删表跑路2 删节跑路 4 5 小细节 xff0
  • 5:数据类型-MySQL

    目录 5 1 数据库的数据类型问题5 2 int数值类型5 3 int类型实际操作和注意事项5 4 浮点数类型5 5 定点数类型5 6 字符串与文本类型5 7 布尔类型5 8 枚举类型5 9 枚举类型的另类存储方式5 10 枚举类型的好处
  • 6:列属性完整性-MySQL

    目录 6 1 列属性问题6 2 Primary key主键作用以及企业用途6 3 删除主键 组合键 选择主键1 删除主键2 组合键3 选择主键 6 4 复合主键究竟有什么用 xff1f 6 5 unique唯一键的作用以及使用6 6 唯一键
  • 7:数据库设计思维-MySQL

    目录 7 1 数据库设计的基本概要7 2 实体和实体之间的关系7 3 Codd第一范式 xff1a 确保每列原子7 4 Codd第二范式 xff1a 非键字段必须依赖与键字段7 5 Codd第三范式 xff1a 消除传递依赖 7 1 数据库
  • 8:单表查询-MySQL

    目录 8 1 开端8 2 select8 3 from8 4 dual8 5 where8 6 in8 7 between and8 8 is null8 9 聚合函数8 10 第三方客户端的使用8 11 like模糊查询8 12 orde
  • 9:多表查询-MySQL

    目录 9 1 union联合查询9 2 inner join内联查询9 3 inner join注意事项9 4 left join 外连接9 5 rigth join 外连接9 6 cross join 交叉连接9 7 natural jo
  • 如何在jupyter notebook中播放视频(不停地展示图片)

    在解决图像处理问题的时候 xff0c 可以利用opencv打开视频 xff0c 并一帧一帧地show出来 xff0c 但是要用到imshow xff0c 需要本地的界面支持 代码如下 span class token comment cod
  • CentOS7配置VNC远程桌面

    桌面还是有很多方便的地方 xff0c 在用U盘给电脑安装了centos7 xff08 带gnome xff09 后 xff0c 接着就需要弄远程桌面 xff08 1 xff09 安装vncserver yum y install tiger
  • 10:子查询-MySQL

    目录 10 1 子查询基本语法10 2 in 和 not in10 3 exists 和 not exists10 4 基础结束语 10 1 子查询基本语法 将一个查询的结果作为另一个查询的数据来源或判断条件 一般情况下子查询结果返回超过1
  • 11:高级部分-MySQL

    目录 xff08 一 xff09 view 视图1 开场2 view视图创建 使用以及作用3 显示视图4 更新和删除视图5 视图算法 xff1a temptable merge xff08 二 xff09 transaction 事务1 事

随机推荐

  • 12:企业规范约束-MySQL

    目录 12 1 库表字段约束规范12 2 索引规范12 3 SQL开发约束规范12 4 其他规范 12 1 库表字段约束规范 字段名 xff1a is vip unsigned tinyint 长度为1mysql命名是不区分大小写的 xff
  • Java与生活

    目录 一带而过 0 0 前言 1 1 Java是怎么执行的 xff1f 说好的exe呢 xff1f 1 2 package 1 3 第一个程序的讲解 1 4 注释和文档 2 0 一带而过 2 1 字符串演示 2 2 字符串结束符的那些事儿
  • 一带而过-Java与生活

    目录 认识Java0 0 前言1 1 Java是怎么执行的 xff1f 说好的exe呢 xff1f 1 2 package1 3 第一个程序的讲解1 4 注释和文档2 0 一带而过2 1 字符串演示2 2 字符串结束符的那些事儿2 3 自动
  • 0:Linux的初步认识-步入Linux的现代方法

    目录 0 0 系统的认识0 1 Linux操作系统认识 xff0c 以及开源的提出 xff1a Linux的千奇百怪的版本0 2 开源的含义0 3 Linux的用途 xff0c 各类发行版本 0 0 系统的认识 什么是系统 xff1f 鼠标
  • 1:VMware虚拟机的使用-步入Linux的现代方法

    目录 1 1 Vmware虚拟机1 2 VMware 161 3 关于从15更新到16的说法 1 1 Vmware虚拟机 安装系统的方式 实体机双系统虚拟机 详见 xff1a VMware Workstation 虚拟机权威指南 零基础虚拟
  • 2:发行版本安装演示——Ubuntu、CentOS、Kali?-步入Linux的现代方法

    目录 2 1 先尝试Ubuntu2 2 VMware Tools2 3 Ubuntu 20 04设置2 4 Linux其他发行版本的安装指导2 5 下载指导 2 1 先尝试Ubuntu 详见 xff1a Linux Ubuntu 零基础体验
  • 3:步入Linux的世界-步入Linux的现代方法

    目录 3 1 Linux究竟需要我们学习什么 xff1f Linux四大组成部分3 2 Linux是命令还是图形界面 xff1f GUI 是什么 xff1f 那GNU是什么东西 xff1f GNU Linux 和Linux有什么区别 xff
  • Linux中 sudo su 和 su 区别

    su 直接切换root用户 xff0c 需输入root密码ubuntu xff0c 默认没有设置root密码 xff0c 使用sudo passwd root设置root密码 sudo su 当前用户暂时申请root权限 xff0c 需输入
  • Python 使用 Qt5 实现水平导航栏

    在 Qt5 中可以使用 QWidget 包含两个水平布局 xff0c 通过点击水平布局里的按钮 xff0c 实现下标滑动与页面的切换 可以按照以下步骤来实现上面图片中的功能 xff1a 导入必要的 Qt 包 xff1a span class
  • OOP上半部分-Java与生活

    目录 1 1 1 问题产生和引导1 1 2 烦人1 1 3 变换思维1 1 4 规划明确目标站在更高层次思考问题1 1 5 上代码 xff0c 设计体验面向对象编程 xff0c 实例和对象1 1 6 去你md成员变量行为类和this1 1
  • Centos7 搭建Jupyter NoteBook教程

    目录 1 Anaconda31 1 下载1 2 安装 2 环境配置2 1 添加PATH到 root bashrc文件中2 2 激活配置的环境变量 3 搭建虚拟环境3 1 创建虚拟环境3 2 开启环境3 3 查看已有的虚拟环境 4 jupyt
  • OOP下半部分-Java与生活

    目录 面向对象三大特性 xff1a 封装 继承 多态2 1 1 需求重定义2 1 2 继承2 2 2 饿狼传说之多层继承2 2 3 方法的重写2 2 4 super啃老2 2 5 啃老啃到彻底2 2 6 final2 2 7 提出新的问题2
  • Centos7 搭建单机Spark分布式集群

    目录 1 JDK Hadoop Spark安装与配置1 1 解压包1 2 配置环境变量 2 Scala安装与配置2 1 Scala安装2 2 配置环境变量 3 配置集群3 1 配置sprak3 2 启动spark 4 问题 xff1a 虚拟
  • 面向对象大胆向前 Java API 实战

    目录 0 xff1a Base API 引言API的定义和用处ScannerNumberMathRandomThreadLocalRandomDateDateFormat和SimpleDateFormatCalendarSystem 详见
  • Yeats_Liao的书单

    计算机软件类 大话计算机 冬瓜哥 架构师的自我修炼 李智慧 图解算法 xff1a 使用C语言 吴灿铭 胡昭民 编程原则 马克思 卡纳特 亚历山大 啊哈 xff01 算法 啊哈磊 Java Web框架开发技术 Spring 43 Spring
  • 0:Base API-Java API 实战

    目录 0 1 引言0 2 API的定义和用处0 3 Scanner xff08 普通类 xff09 0 4 Number xff08 包装类 xff09 0 5 Math xff08 工具类 xff09 0 6 Random xff08 父
  • 黑客与画家 [美] Paul Graham 读书摘录

    充分理解程序员带来的美和智慧 xff0c 这是本书做到的 P15 为什么书呆子不受欢迎 xff1f 平庸带来的严重后果 xff0c 直接导致学生的叛逆心理 我误解最深的一个词是 老成 tact 成年人使用这个词 xff0c 含义似乎就是 闭
  • 教育的真谛 [英] 尼古拉斯·泰特 读书摘录

    自柏拉图以来 xff0c 教育的目的与性质始终是西方哲学传统关注和探讨的问题 纵览2500年来的思想成果 xff0c 作者尼古拉斯 泰特博士在 教育的真谛 xff1a 伟大思想家的观点及其现实意义 中指出 xff0c 人类的教育活动至少应包
  • 1:Unit test and main function-Java API 实战

    目录 1 抛出企业问题 xff0c 脱离main测试 xff0c 模块化编程2 Junit单元测试的含义和用途3 怎么获取各种Jar包 xff1f Maven Repository 获取各类各个版本的jar xff0c 这就是仓库 脱离老师
  • CentOS 安装 Samba服务器(多用户组、多用户有不同的访问权限)

    增加smb用户 root 64 localhost sir01 smbpasswd a linuxsir 查看 smb 现有用户 pdbedit L 验证用户登录文件夹 smbclient 192 168 101 93 forlder U