当前位置:网站首页 > 微服务架构 > 正文

samba共享服务(samba共享服务什么意思)



samba是一个开源的网络文件共享协议,它允许在不同操作系统之间共享文件和打印机。它提供了一种linux/unix系统与windows系统进行互操作的方式。

SMB协议 成为windows中共享文件和打印机的主要协议

CIFS协议 本质是SMB协议的一个变种或扩展

直接yum -y install samba

smbd:提供对服务器中文件,打印资源的共享访问

nmbd:提供基于NetBIOS主机名称的解析

/etc/samba

/etc/samba/smb.conf

smb.conf文件的配置内容

global:全局设置

homes:用户目录共享设置

printers:打印机共享设置

myshare:自定义共享目录设置

常用全局配置项的含义

1,workgrouop:所在工作组名称

2,server string:服务器描述信息

3,security:安全级别,可用值share,user,server,domain

share:用户访问服务器不需要提供用户名和口令,安全性能较低

user:服务器中的目录只能被授权用户访问,samba服务器负责检查账号和密码的正确性,和/etc/passwd的检查不是一个

server:系统管理员将所有的windows用户和口令集中到一个NT系统上,使用Windows NT进行Samba认证

domain:域中使用,使用DC完成认证

4,log file:日志文件位置,"%m"变量表示客户机地址

5,passwd backend:设置共享账户文件的类型

常见共享目录配置项的含义

1,path:共享目录在服务器中对应的实际路径

2,guest ok:是否允许所有人访问,等效于"public"

3,writable:是否可写,与read only的作用相反

建立samba用户数据库文件

默认数据库文件位/var/lib/samba/private/passdb.tdb

设置用户访问授权

新建共享目录与共享用户

修改smb.conf配置文件,添加名为tools的共享目录

重新加载smb.conf文件,或重启smb服务

确定用户访问权限

设置目录权限

设置上传文件和目录的默认权限

简单的samba实验

一台samba服务器(centos7)192.168.100.2

一台客户机(win7)192.168.100.1

一台客户机(kali) 192.168.100.3

确保三台机器互相连通

1,创建用户

2,用pdbedit创建密码

pdbedit是samba服务器的用户数据库进行管理的工具

-a 表示添加新用户

-u 指定用户名

pedbedit -vL zhangsan    查看zhangsan的详细信息

3,开启服务

systemctl start smb

systemctl start nmb

4,远程连接

在客户机执行

我们在zhangsan的家目录创建一个文本文件

为了安全起见,我们还可以设置共享账号映射,也就是起别名,我们可以用zs来充当zhangsan的别名,就可以用zs登录

1,创建用户文件

我们在/etc/samba下新创建一个文件smbusers

2,添加配置变量username map

在smb.conf文件中的全局变量中添加username map=刚才创建的文件路径

3,重启服务

4,远程连接

重新在客户机上访问samba服务器,这次不需要密码,我们直接可以进来。为了验证别名登录,我们需要注销或者直接cmd中net use * /del  删除所有连接

还可以设置ip限制

访问地址限制

一般用在全局配置[global]部分

hosts allow:仅允许特定的客户机

hosts deny:仅允许特定的客户机

1,设置配置变量host allow

2,重启服务

3,远程连接

用另一台kali机器访问samba服务器

由于hosts allow只设置了kali机器,win7也无法登录

也可以使用mount将共享文件夹挂载到一个目录中

1,创建文件夹

创建一个文件夹123

2,挂载

将samba服务器的共享目录挂载到本地123文件夹下

实验要求

创建共享目录:share和manager

创建访问用户:admin,zhangsan,jingli1,jingli2

创建访问组:managers

权限需求1:share可以被所有人访问下载,只有admin可以上传

权限需求2:manager目录只有属于manager组的用户和admin可以访问下载,其它人无权访问,而admin除了下载还有上传权限。

需求1

先创建两个目录/share /manager

groupadd -g 1500 managers

创建一个managers组

gpasswd -M jingli1,jingli2 managers

将两个成员添加到组中

查看组

将这两个文件夹的权限设置成777,方便读写

编辑samba配置文件smb.conf

在最后一行添加如下内容

public=yes 可以被所有人访问,无需进行身份验证

read only=yes可以读取文件,但无法写入或修改文件

write lsit=admin可以写入文件或修改文件

重新启动服务,客户机注销,重新连接

admin上传文件成功

jingli1上传文件被拒绝,其它也一样

需求2

public=no 共享资源不公开,需要身份验证才能访问

read only=yes表示共享资源是只读的,用户可以查看或读取文件

valid users=admin,@manager表示只有列出的用户和组才能连接到共享资源

write list=admin表示admin用户具有写的权限,包括创建,修改,删除

重新启动服务,客户机注销,重新连接。

admin用户在manager目录下创建文件

删除文件

用jingli2登录服务器

用户jingli2无法上传文件

到此这篇samba共享服务(samba共享服务什么意思)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • 微信hook什么意思(微信hook全接口)2025-09-14 09:00:10
  • 个人服务器搭建硬件推荐(个人服务器硬件配置)2025-09-14 09:00:10
  • 腾讯会员怎么给别人用二维码登录微信(手机腾讯会员微信登录怎么给别人用二维码)2025-09-14 09:00:10
  • 微信抽奖小程序制作教程(微信抽奖活动小程序)2025-09-14 09:00:10
  • 微信机器人有哪些指令(微信机器人有什么玩法)2025-09-14 09:00:10
  • 国内github叫什么(github在国内有服务器吗)2025-09-14 09:00:10
  • 微信好玩的代码MC(微信好玩的代码马里奥)2025-09-14 09:00:10
  • linux系统 微信(linux系统微信文件打不开)2025-09-14 09:00:10
  • linux有微信么(linux如何使用微信)2025-09-14 09:00:10
  • 微信群接龙小程序制作卖东西(微信群接龙小程序制作卖东西怎么操作)2025-09-14 09:00:10
  • 全屏图片