一 Samba简介

早期的Unix系统中通过NFS让所有的Unix系统之间可以实现资源共享,
微软推出了SMB(server message block)通信协议让系统间可以实现资源共享,
由于Windows的SMB未公开,所以Unix与Windows 之间实现资源共享,基本只能通过FTP来实现,FTP尽管好用,带也有些不足,无法直接修改主机上面的档案数据,只能下载之后进行修改,如果要进行修改上传文件,也只能先下载,并再次上传,

Samba 这个自由软件的推出,让类Unix系统可以加入到Windows 网络中,利用SMB协议与windows 系统之间实现资源共享等相关功能, 实现了类Unix与Windows之间资源共享与访问。

二 Samba主要提供的功能及工作方式

1 功能

1 在类Unix与Windows之间实现资源共享(目录。打印机和ZIP、CDROM)
2 用户的认证和授权
3 使用WINS(Windows的名称解析服务)服务进行名称解析及浏览

2工作方式

Samba 的两个进程
Nmbd :此进程主要是nmb服务,使用的是UDP的137/138端口,主要进行NETBIOS名称解析,并提供浏览服务显示网络上的共享资源列表
Smbd :主要是smb服务,使用TCP的139 、445端口,主要管理Samba服务器上的共享目录、打印机等,是对网络上的共享资源进行管理的服务

3 Samba服务器与客户端之间的交互流程

1 协议协商,客户端在访问Samba服务器时,发送negport命令包,告诉目标计算机器支持的SMB类型。Samba 服务器根据客户端的情况,选择最优的SMB类型,并作出应答

2 建立连接: 当SMB类型确认后,客户端发送session setup 命令数据包,提交账户信息,请求与Samba服务器建立连接,如果客户端通过身份验证,Samba服务器会对session setup 报文作出回应,并为用户分配唯一的UID,再客户端与其通讯

3 访问共享资源:客户端访问Samba 共享资源时,发送 tree connect 命令数据包,通知服务器需要访问的共享资源名,如果设置允许,Samba 服务器会为每个客户与共享资源的连接分配TID,客户端即可访问需要的共享资源

4 断开连接:共享完成后,客户端向服务器发送 tree disconnect 报文关闭共享。

四 安装和启动Samba服务器

windows samba客户端工具 windows samba服务器_操作系统
windows samba客户端工具 windows samba服务器_共享目录_02
windows samba客户端工具 windows samba服务器_共享目录_03
windows samba客户端工具 windows samba服务器_操作系统_04

五 配置Samba

1 创建Samba用户

此用户必须是Linux真实存在的用户
windows samba客户端工具 windows samba服务器_网络_05

2 进行登录测试

windows samba客户端工具 windows samba服务器_操作系统_06

windows samba客户端工具 windows samba服务器_数据库_07

3 配置客户端的登录测试

windows samba客户端工具 windows samba服务器_客户端_08

windows samba客户端工具 windows samba服务器_客户端_09

4 在客户端进行挂载操作

windows samba客户端工具 windows samba服务器_操作系统_10

windows samba客户端工具 windows samba服务器_操作系统_11

5 配置文件修改,修改工作组名称

windows samba客户端工具 windows samba服务器_数据库_12
windows samba客户端工具 windows samba服务器_客户端_13
windows samba客户端工具 windows samba服务器_操作系统_14

windows samba客户端工具 windows samba服务器_操作系统_15

6 不允许某些用户访问

windows samba客户端工具 windows samba服务器_网络_16

windows samba客户端工具 windows samba服务器_操作系统_17
windows samba客户端工具 windows samba服务器_数据库_18

windows samba客户端工具 windows samba服务器_数据库_19

windows samba客户端工具 windows samba服务器_数据库_20

注销则允许访问

7 配置文件共享

1 创建文件

windows samba客户端工具 windows samba服务器_共享目录_21

2 配置配置文件

windows samba客户端工具 windows samba服务器_操作系统_22
windows samba客户端工具 windows samba服务器_数据库_23

3 重启服务

windows samba客户端工具 windows samba服务器_共享目录_24

4 查看文件共享情况

windows samba客户端工具 windows samba服务器_数据库_25

5 在共享文件夹下创建文件

windows samba客户端工具 windows samba服务器_网络_26

6 开启文件夹的标签

windows samba客户端工具 windows samba服务器_网络_27

7 进行测试

windows samba客户端工具 windows samba服务器_数据库_28

8 挂载

windows samba客户端工具 windows samba服务器_网络_29

9 自动挂载的配置

windows samba客户端工具 windows samba服务器_共享目录_30

windows samba客户端工具 windows samba服务器_共享目录_31

windows samba客户端工具 windows samba服务器_数据库_32

10 设置guest用户

可以不用密码进行挂载并自动挂载

windows samba客户端工具 windows samba服务器_客户端_33
windows samba客户端工具 windows samba服务器_数据库_34

windows samba客户端工具 windows samba服务器_操作系统_35

windows samba客户端工具 windows samba服务器_数据库_36
windows samba客户端工具 windows samba服务器_共享目录_37

windows samba客户端工具 windows samba服务器_网络_38
windows samba客户端工具 windows samba服务器_数据库_39

windows samba客户端工具 windows samba服务器_操作系统_40

windows samba客户端工具 windows samba服务器_数据库_41

11 增加对共享文件的写功能

windows samba客户端工具 windows samba服务器_网络_42

windows samba客户端工具 windows samba服务器_数据库_43

windows samba客户端工具 windows samba服务器_数据库_44

windows samba客户端工具 windows samba服务器_操作系统_45

windows samba客户端工具 windows samba服务器_网络_46

12 创建共享用户组

创建MySQL用户并将其加入admin组中使其可以访问共享文件

windows samba客户端工具 windows samba服务器_操作系统_47

windows samba客户端工具 windows samba服务器_共享目录_48

windows samba客户端工具 windows samba服务器_客户端_49

配置只有admin用户由此权限进行编辑,mysql用户无此权限

windows samba客户端工具 windows samba服务器_共享目录_50
windows samba客户端工具 windows samba服务器_数据库_51
windows samba客户端工具 windows samba服务器_网络_52

windows samba客户端工具 windows samba服务器_数据库_53

配置此组内的用户有此权限
windows samba客户端工具 windows samba服务器_操作系统_54
windows samba客户端工具 windows samba服务器_网络_55

windows samba客户端工具 windows samba服务器_客户端_56

windows samba客户端工具 windows samba服务器_客户端_57

windows samba客户端工具 windows samba服务器_数据库_58

配置管理用户使其可以访问,其对文件本身不具备访问权限,但在使用该用户挂载后可以进行任何操作
windows samba客户端工具 windows samba服务器_网络_59

配置文件中间不能有空格
windows samba客户端工具 windows samba服务器_数据库_60
windows samba客户端工具 windows samba服务器_客户端_61
windows samba客户端工具 windows samba服务器_共享目录_62
windows samba客户端工具 windows samba服务器_操作系统_63
windows samba客户端工具 windows samba服务器_客户端_64

windows samba客户端工具 windows samba服务器_共享目录_65

13 隐藏共享文件名

windows samba客户端工具 windows samba服务器_共享目录_66

windows samba客户端工具 windows samba服务器_网络_67
windows samba客户端工具 windows samba服务器_数据库_68

windows samba客户端工具 windows samba服务器_客户端_69

配置只有此用户可以挂载
windows samba客户端工具 windows samba服务器_共享目录_70
windows samba客户端工具 windows samba服务器_操作系统_71
windows samba客户端工具 windows samba服务器_共享目录_72

windows samba客户端工具 windows samba服务器_客户端_73

14 配置其组内用户可以挂载

windows samba客户端工具 windows samba服务器_共享目录_74

windows samba客户端工具 windows samba服务器_网络_75

Samba服务器的配置与管理

windows samba客户端工具 windows samba服务器_操作系统_77

六 Samba 多用户挂载

1 安转软件cifs-utils 客户端安装并运行

windows samba客户端工具 windows samba服务器_客户端_78

windows samba客户端工具 windows samba服务器_数据库_79
windows samba客户端工具 windows samba服务器_网络_80
windows samba客户端工具 windows samba服务器_客户端_81

windows samba客户端工具 windows samba服务器_客户端_82
windows samba客户端工具 windows samba服务器_数据库_83
windows samba客户端工具 windows samba服务器_共享目录_84

七 扩展

共享选项

1 comment : 对共享目录进行注释说明

2 writable :用户对共享目录是否可写,需要注意的是,即使这里设置为yes ,用户对Linux中对应目录没有写权限,也不能进行写操作

3 browseable : 设置用户是否可以浏览到该共享目录(将browseable 设置为no,目录将隐藏,但通过直接输入共享目录命令,仍可以访问该共享目录)

4 vaild users ; 可以访问共享目录的用户列表

5 invalid users : 禁止访问共享目录的用户列表

6 create mode : 在共享目录重创建文件时,对文件的权限进行设置,(如设置为0664)

7 diectory mode: 在共享目录中创建目录时设置权限属性

8 readonly: 设置共享目录为只读形式

9 public : 设置共享目录是否允许匿名访问

10 guest ok : 与 public相同

11 writable : 设置为yes,表示该共享目录允许写操作,与此选择项具有相同作用的还有write ol 选项

12 read only : 设置是否只读,若设置为 no ,与 writable = yes 的意思相同

13 read list ; 只能以读权限访问共享目录的用户列表

14 write list ; 具有写权限的用户列表,无论writable 和 read list 中设置的是什么,在选项设置中都局写权限

转载于:https://blog.51cto.com/11233559/2048252