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   定義一個列表決定用戶/或組是否可寫,定義組的時候

                                     ,須要用@組名

相關文章
相關標籤/搜索