samba工做机制

Samba协议基础linux

 

在NetBIOS出现以后,Microsoft就使用NetBIOS实现了一个网络文件/打印服务系统,这个系统基于NetBIOS设定了一套文件共享协议,Microsoft称之为SMB(ServerMessage Block)协议。这个协议被Microsoft用于它们Lan Manager和WindowsNT服务器系统中,实现不一样计算机之间共享打印机、串行口和通信抽象(如命名管道、邮件插槽等)。ios

 

随着Internet的流行,Microsoft但愿将这个协议扩展到Internet上去,成为Internet上计算机之间相互共享数据的一种标准。所以它将原有的几乎没有多少技术文档的SMB协议进行整理,从新命名为 CIFS(Common InternetFile System),并打算将它与NetBIOS相脱离,试图使它成为Internet上的一个标准协议。web

 

所以,为了让Windows和Unix计算机相集成,最好的办法便是在Unix计算机中安装支持SMB/CIFS协议的软件,这样Windows客户就不须要更改设置,就能如同使用WindowsNT服务器同样,使用Unix计算机上的资源了。Samba是用来实现SMB的一种软件,它的工做原理是,让NETBIOS(Windows95网络邻居的通信协议)和SMB(ServerMessage Block)这两个协议运行于TCP/IP通讯协议之上,而且使用Windows的NETBEUI协议让Unix计算机能够在网络邻居上被Windows计算机看到。windows

 

 

Samba的工做原理安全

SAMBA主要提供的是SMB/CIFS或者NETBIOS协议的。服务器

因此只要使用了SAMBA,就能实现让Linux出如今Windows的网上邻居里,或者,让Windows的文件共享在Linux上--网络

一旦在linux上安装以后,有两个主要进程:dom

1.nmbd :提供NETBIOS名称解析的tcp

2.smdb : 提供文件共享的。ide

而因为NETBIOS协议对于windows来说监听TCP的139端口和UDP的137,138端口,因此nmbd在linux上模拟出了udp的137和138端口,以及tcp的139端口,smdb上模拟出tcp的445端口。而SAMBA将在Linux上同时监听这4个端口。 

 

Samba的安装与配置

1、安装

 yum install samba

安装完成后配置文件是放在/etc/samba/smb.conf

 

安装完成后查看samba的包

 yum list all | grep ^samba

 

samba-client.x86_64                         3.6.23-43.el6_9             @updates

samba-common.x86_64                         3.6.23-43.el6_9             @updates

这两个是做为客户端使用的

samba.x86_64                               3.6.23-43.el6_9            @updates

这个是做为服务端使用

samba-swat-3.5.10-125.el6.x86_64                   //基于https协议的samba服务器web配置界面

 

 

 

 

2、配置

                         配置文件主要有4个部分

                         1、全局配置【global

  2、家目录    homes

  3、独立的共享printer

  4、自定义

第一段分析【golbal】

Workgroup = MYGROUP     定义工做组

 

Server string = Samba Server Version %v  

用于当你打开网上邻居时显示的注释信息

 

 netbios name = xxx   显示在终端的名字

 

 interfaces = lo eth0 192.168.12.2/24192.168.13.2/24

 hosts allow = 127. 192.168.12. 192.168.13.

 定义访问控制列表

 

Security = user

这一项很重要是用来定义SAMBA的服务安全级别,安全级别主要有4

                        1share:容许任何匿名用户访问

 

 2user:默认、每个用户访问时都须要提供帐号密码

 

 3domain/server:

        一般意味着用户的帐号密码在认证时时经过第三方集中

        认证,而不是经过系统来认证,好比有专门的认证服务

         器(ad域、nis等)

         

若是samba服务器加入windows域环境中,验证工做服将由windows域控制器负责,domain级别的samba服务器只是成为域的成员客户端,并不具有服务器的特性,samba早期的版本就是使用此级别登陆windows域。

 

 

 

 

   4ads:经过主域控器来认证

           passdb backend = tdbsam  全部的samba用户认证方式

           load printers = yes                是否去尝试加载打印机

           cups options = raw            通用打印系统,指定打印方式

                                        

当samba服务器使用ads安全级别加入到windows域环境中,其就具有了domain安全级别模式中全部的功能并能够具有域控制器的功能。

 

 

 

        第二段分析【homes

         comment = Homedirectories         注释信息

 

         browseable = no

         浏览,若是这个用户不是这个目录的属主,是否能够看到这个目录

         no表示只有属主才能看到

 

         writable = yes  是否能够新建文件夹,yes为能够no为不能够

 

 

         第三段分析【printers

          comment = All printers

 

 path = /var/spool/samba       打印池

 

  browseable = no

 

 guest ok = no                            打印机是否公开

 

  wirtable = no

 

  printable = yes

 

 第四段自定义分析【tools】中括号里的表示共享名

          

          comment = mytools                       注释

         

          path = /share         共享目录的路径

 

          browseable =yes                  是否可浏览

 

          guest  ok    =yes                    是否容许来宾帐号

 

          writable = yes        是否可写

 

         write list = xxx   定义一个列表决定用户/或组是否可写,定义组的时候

                                     ,须要用@组名

相关文章
相关标签/搜索