当前位置:首页 > 教程 > 第三方教程 > 正文内容

Samba服务、SMB协议是什么?

bingge5年前 (2020-01-24)第三方教程69600

Samba服务—SMB协议

在windows当中我们最常见的就是网上邻居可以看到同一互联网上连接的所有用户

在服务器端,linux与window Server相比的稳定性,安全性执行效率以及性价比都是较高的。所以好多window Server下跑的一些服务都会切换到运行在linux服务上,但是对于一些桌面用户来说用到的较多的就是文件共享协议。而在linux中我们可以使用 FTP NFS这类型文件共享协议,但是对于window上比较简单的直接打开的服务在linux中的nfs协议来说是不能在window上使用的这种直接将文件系统共享出来的协议为SMB。

与ftp的区别是不用将文件下载下来在使用,是直接可以在共享中打开使用的,所以说这种共享方式在使用当中是非常方便的,但是SMB是window当中的一种私有协议。即使如此在linux当也提供对SMB协议的一种支持。(虽然是window下的私有协议但是我们的开源技术团队为我们的linux也提供了这种服务称为samba服务,在开发过程中也是相当的艰苦 ,由于在window下是闭源的所以开发者是通过抓包分析window下所产生的数据包来实现的。弄清楚它的一个原理。)

SMB(Server Message block)协议是window下所使用的文件共享协议,我们在linux系统或者其类unix系统当中可以通过samba服务来实现SMB功能。

Samba服务是SMB的一个开源实现。


SMB的功能有哪些:


1.通过SMB协议进行文件共享

2.通过SMB协议进行打印共享(我们可以通过在linux上通过smb配置打印服务器,为window提供打印服务)

3.加入一个windows2000/2003/2008域环境(在企业环境当中应用最多,目前smb是支持这三种主流的window服务操作系统的,好多企业当中整个的企业环境当中是使用window的域环境进行管理的,而所有的用户组,权限,组策略信息都是在window域环境进行配置的,那么但是我们的企业又想把一些应用服务和需要用到的一些域环境进行认证或者是做权限控制的这些应用服务去切换到linux系统当中,那在这种情况下就涉及到我如何和window下的这些域环境进行兼容,那么smb是可以加入window域环境当中,并且是可以和window下的这些域环境进行认证操作的。所以smb这个协议是相当强大的不仅限于只是实现文件共享)

4.通过windows域环境进行认证操作

在linux中怎么启动SAMBA?

安装samba。


Yum install samba -y

Samba拥有两个主服务(相关服务),对于一般使用的服务他只有一个主服务

smbd (提供samba核心功能也是使用最多的一种功能) 提供文件及打印共享服务功能,使用139/445端口

nmbd 提供Netbios(解析协议慢慢的被淘汰)支持,使用137/138端口,而对于这种协议使用较少,现在都是dns进行解析

一般作为文件共享使用samba,则只需要smbd服务

SAMBA 配置文件:


端口号:


配置文件模块详解:

[global]

workgroup = MYGROUP   定义该Samba服务器所在的工作组或者域(如果下面的security=domain的话)

server string = Samba Server Version %v  

设定机器的描述,当我们通过网络邻居访问的时候可以在备注里面看见这个内容,而且还可以使用%v = Samba服务的版本号。

log file = /var/log/samba/log.%m   定义记录文件的位置LogFileName

max log size = 50

定义记录文件的大小size(单位是KB,如果是0的话就不限大小)

security = user

定义Samba的安全级别,按从低到高分为四级:share,user,server,domain。它们对应的验证方式如下:

* share:没有安全性的级别,任何用户都可以不要用户名和口令访问服务器上的资源。

* user:samba的默认配置,要求用户在访问共享资源之前资源必须先提供用户名和密码进行验证。

* server:和user安全级别类似,但用户名和密码是递交到另外一个服务器去验证,比如递交给一台NT服务器。如果递交失败,就退到user安全级。

* domain:这个安全级别要求网络上存在一台Windows的主域控制器,samba把用户名和密码递交给它去验证。

后面三种安全级都要求用户在本Linux机器上也要系统帐户。否则是不能访问的。

load printers = yes

1

2

3

4

5

6

7

8

9

10

11

12

13

14

[homes]

smb.conf文件中一般没有对这个目录的设定特定内容比如路径等。

当客户机发出服务请求时,就在smb.conf文件的其它部分查找友特定内容的服务。

如果没有发现这些服务,并且提供了homes段时,那么就搜索密码文件得到用户的Home目录。

通过Homes段,Samba可以得到用户的Home目录并使之共享。

下面是这个段的最基本的几个设置。

comment = Home Directories

browseable = no

writable = yes

1

2

3

4

5

6

7

8

[printers]

comment = All Printers

path = /var/spool/samba

browseable = no

guest ok = no

writable = no

printable = yes

write list = +staff   @用来指定可以在该共享下写入文件的用户              

这里printable指明该打印机可以打印, guest ok说明游客也能打印,path指明打印的文件队列暂时放到/var/spool/samba目录下。

1

2

3

4

5

6

7

8

SAMBA 配置文件的格式


[global] ###全局控制段

workgroup = workgroup(MYGROUP) #工作组

server string = Samba Server Version %v

security = user

encrypt passwords = yes #密码加密

wins support = yes #wins支持

log level = 1 #日志级别

max log size = 1000 #最大日志kb

read only = no #可读写

1

2

3

4

5

6

7

8

[homes] 共享目录名称 #家目录

browsable = no #浏览

map archive = yes

1

2

[printers] #打印机

path = /var/tmp #指定目录

printable = yes #是个打印机

min print space = 2000                #空间

1

2

3

[test] #共享的目录

browsable = yes #可浏览

read only = yes #只读

path = /usr/local/samba/tmp #共享的服务器目录

1

2

3

例子:

[global]

workgroup = workgroup


[homes]

browseable = no

writable = yes


[test]

path = /share

comment = test a directory

#重启服务

[root@mail samba]# systemctl restart smb

[root@mail samba]# systemctl restart nmb


windows系统中删除登陆缓存信息

cmd>net use * /delete

在window资源设备器上去访问:\192.168.0.130


提示要账号和密码:

添加samba用户

(先useradd添加用户)

[root@localhost samba]# smbpasswd -a xixi

New SMB password:

Retype new SMB password:

Added user xixi.

查看samba用户用

#pdbedit -L

最后看到两个目录 用户家目录 xixi test 对应得是/share


实验提升:

要求:

1、通过samba实现公司的文件交换服务器,

2、实现/public 目录让所有人访问,所有人都可以写入文件

配置示例:


[root@localhost samba]# cat smb.conf

[global]

workgroup = workgroup

[public]

path = /public

public = yes

comment = file

writable = yes


注意:selinux开启的状态下,需要执行:chcon -t samba_share_t /public -R


用户控制:

1.public =所有用户都可以访问 / guest ok =yes/no

2. map to guest = Bad User 匿名访问

3. browsable = 可浏览(设置共享是否可游览,如果是no表示隐藏,通过ip+共享名进行访问)

4. writable = yes 可写,还要看目录权限

5. writable list = maomao,@GROUPNAME,+GROUPNAME

6. readonly = yes 只读设置

7. create mask = 0644 客户机创建文件权限

8. directory mask = 0744 客户机创建目录的权限

9. valid users = user1,user2,@group1//禁止登录用户,用户用逗号隔开,组用@ //禁止

invalid = //允许访问控制

10. max connections = 最大连接数目

11. deadtime = 断掉连接时间(分钟,0为不限制

12. hosts allow = 允许主机

hosts deny = 拒绝主机(允许优先)


实验提升2:

案例2 要求:

1、通过samba提供一个公共文件服务器,所有人都可以访问并写入,但是不可以删除和修改他人的文件。

2、技术部需要一个文件服务器,用于存放常用的软件工具,所有人都可以访问,但是只有技术部可以写入

3、每个人都可以进入自己的独立家目录,别人不可以访问。

配置示例:

[root@localhost ~]# vim /etc/samba/smb.conf

[global]

workgroup = workgroup

security = user

[public] 共享名

path = /public 共享路径

public = yes 指定该共享目录是否允许guest账户访问

comment = file 共享目录的描述

writable = yes 该目录路径是否可写

[soft]

path = /soft

public = yes

comment = soft

write list = @jishubu (表示技术部组的人可以写添加技术部组将用户加入组,并将用户改为samba用户)

[homes]

browsable = no

writable = yes


[root@localhost ~]# chcon -t samba_share_t /soft

[root@localhost ~]# chcon -t samba_share_t /share

[root@localhost ~]# setsebool -P samba_export_all_rw on

注意SELINUX开启的情况下,需要执行setsebool -P samba_enable_home_dirs on 否则,用户不能进入自己的家目录

————————————————

版权声明:本文为CSDN博主「时不待我。」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/csdn10086110/article/details/89174589


免责声明
  本网站所收集的部分公开资料来源于互联网,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。如遇侵权请发邮件admin#asussmart.com 进行删除(#替换成@)!

本站会跳转到JD网站,如你不能接受,请退出访问本网站,本站没有为你免费服务的义务,也请大家文明访问!

扫描二维码推送至手机访问。

版权声明:本文由AsusSmart发布,如需转载请注明出处。

本文链接:https://www.asussmart.com/smart/851.html

标签: 教程
分享给朋友:

“Samba服务、SMB协议是什么?” 的相关文章

华硕RT-ACRH17怎么备份原厂ART?也适合AC58U

华硕RT-ACRH17怎么备份原厂ART?也适合AC58U

本文转载自:http://www.upantool.com/sense/luyouqi/13457.html 如果你购买了华硕的路由器那说明你是比较懂路由器的,华硕的虽然贵,但质量和性能实在是好,而我们买来华硕路由器如果要刷入第三方固件,那么注意,第一件重要的事是备份,这点很重要!而这里就教大家如何...

宽带连接错误651是什么意思?宽带连接错误651怎么解决

宽带连接错误651是什么意思?宽带连接错误651怎么解决

大家在使用宽带上网的时候偶尔会遇到宽带连接错误651的情况,每一个宽带错误代码都有对应的错误含义,宽带连接错误651为调制解调器(modem)发出的错误报告,一般情况下是未找到指定的端口。以下介绍以下这种错误发生的情况和具体的解决方法:【宽带连接错误651是什么意思】  遇到宽带连接错误651时,经...

Windows各操作系统常见PPPoE拨号错误代码说明

Windows各操作系统常见PPPoE拨号错误代码说明

本文列出Windows系统使用系统自带的宽带连接拨号可能出现的错误代码及解决方法。一、错误代码678/651Windows XP拨号提示错误678,远程计算机没反应,如下图:Windows 7/8/8.1/10提示错误代码651,调制解调器(或其他连接设备)报告了一个错误。如下图:注意:Window...

使用路由器后,上网速度比较慢(下载慢、延迟大)?

使用路由器后,上网速度比较慢(下载慢、延迟大)?

使用路由器为的是内网多个手机电脑共享一条宽带上网,路由器本身不会导致网速变慢。但是在实际使用中,由于设置、使用或环境等因素可能会导致网速较慢,所以会出现100M宽带只有5M、下载速率20KB、速率为原来的1/5等现象。误区解释:一般情况下,我们看到软件中的速率是以B为单位的,而申请的宽带单位是b,1...

如何同时Ping 1000个IP地址,小技巧节约一整天?

如何同时Ping 1000个IP地址,小技巧节约一整天?

我们知道,想知道一个ip地址是否联通,我们直接可以用ping命令解决,有弱电VIP技术群里朋友问到,如果有10设备,100台设备,1000台设备怎么办?一个个ping过去人都要疯掉了,这种情况在大型网络中我们有可能遇到,那怎么办呢?我们今天来看下。一、批量ping网段对于一个网段ip地址众多,如果单...

[桌面计算机/主板] 有线网络不定时断线的处理方法

[桌面计算机/主板] 有线网络不定时断线的处理方法

[桌面计算机/主板] 有线网络不定时断线的处理方法如您的网络会有不定时断线的情形,请确认以下事项1. 确认您的网络线没有折损、断裂、接头损毁的情形,网络线有正确连接主机与路由器(没有摇晃、松脱)2. 更新网卡驱动程序(更新驱动程序的方法请参考这里)3.若您有使用路由器连接网络,请确认路由器有正确运作...