Samba服務器工做原理及配置 ( 資源 )

Samba簡介

       Samba是著名的開源軟件項目之一,它在Linux/unix系統中實現了微軟的SMB/CIFS網絡協議,從而使得跨平臺的文件共享變得更加容易。在部署windows、Linux/unix混合平臺的企業環境時,選用Samba能夠很好的解決不一樣系統之間的文件互訪問題。 html

 

1.Samba使用NetBIOS通信協議,就像NFS是架構在RPC Server上面同樣,Samba是架構在NetBIOS(Network Basic Input/Output System)這個通信協議上面所開發出來的。linux

2.NetBIOS機器間的溝通:ios

取得對方主機的NetBIOS name定位該主機所在,利用對方給予的權限存取可用資源。web

3.Samba使用nmbd、smbd這兩個服務來控制定位主機和權限分配:數據庫

nmbd:用來管理工做組、NetBIOS name等的解析。主要利用UDP協議開啓137 138端口來負責名稱解析的任務。ubuntu

smbd:這個daemon主要用來管理Samba主機分享的目錄,檔案與打印機。主要利用TCP協議傳輸數據,開放端口爲139.windows

注意   :  centos

  • Samba服務的默認安全級別爲user,要求提供用戶驗證。對於匿名共享服務,通常將安全級別設爲share安全

  • 使用pdbedit工具能夠建立、刪除Samba共享用戶。服務器

  • 經過smbusers文件能夠爲共享用戶帳號設置別名。

  • 使用smbclient工具能夠查詢並登陸、訪問共享資源,而使用mount命令能夠將共享文件夾掛載到本地。

SAMBA 服務器四種共享方式      :      share、user、server、domain

amba 服務器的配置文件是  :  smb.conf

更改和添加SAMBA服務器登錄用戶的密碼命令       : 修改smb服務器口令使用smbpasswd 

Samba 服務器的進程由 smbd 和nmbd  兩部分組成。

4.兩種聯機模式:

  peer/peer:局域網內各PC機之間獨立運行,適用於小型網絡。

  Domain model:局域網內各PC機統一經過PDC主機認證(LDAP),以獲取適當的權限,適用於大中型網絡。

5.Samba的主要配置文件(/etc/samba):

  smb.conf:最主要的配置文件,分爲[global]和[Share Definitions]兩個部分。

  Imhost:對應NetBIOS Name與該主機的IP,通常Samba在啓動時就能捕捉到LAN中相關計算機NetBIOS Name對應的IP,所以,這個配置文件通常不用設置。

  Smbpasswd:這個文件默認不在,它是Samba預設的使用者密碼對應表。

六、安裝須要的升級包

samba                                 服務端軟件

samba-client                       客戶端軟件

samba-common                 提供服務端和客戶端的公共組件

System-config-samba        samba 的圖形界面軟件包

Samba-swat                       samba的web界面管理軟件包

七、Samba服務相關進程及端口號

/usr/sbin/smbd    爲客戶機提供服務器中的共享資源的訪問

/usr/sbin/nmbd    提供基於 NetBIOS 協議的主機名稱解析

Samba的腳本      /etc/init.d/smb

Samba的端口:

Nmbd:(137138)NetBIOS 協議

smbd:139(SMB 協議)  445(CIFS 協議)

八、

主配置文件smb.conf

          Samba服務的配置文件位於/etc/samba目錄中,其中smb.conf是主配置文件。在smb.conf文件中,以「#」號開始的行表示註釋性的文字,以「;」開始的行表示是配置樣例。

 

           在配置共享文件夾時,用戶能夠參考文件中提供的樣例行進行設置。刪除註釋行,樣例行及空行之外的內容,纔是samba服務器的有效配置。

 

          [global]全局配置:這部分配置項的內容對整個samba服務器都有效。

 

         [homes]宿主目錄共享設置:設置Linux用戶的默認共享,對應用戶的宿主目錄。當用戶訪問服務器中與本身用戶名同名的共享目錄時,經過驗證後將會自動映射到該用戶的宿主文件夾中。

        [printers]打印機共享設置:若是須要共享打印機設備,能夠在這部分進行設置。若須要在smb.conf文件中設置新的共享文件夾,只須要增長一段如「[myshare]」開始的共享設置便可,其中「myshare」爲用戶自定義的共享名。新的共享文件夾設置能夠參考「[homes]」和「[printers]」部分的內容。

 

9.安裝Samba:

查看Samba服務是否安裝:

rpm -qa | grep samba

yum安裝:yum install -y samba

 

查看包的安裝狀況:

samba-winbind-clients-3.6.23-46el6_9.i686 #客戶端軟件,主要提供linux主機做爲客戶端時,所須要的工具指令集

samba-winbind-3.6.23-46el6_9.i686  # windows域成員的一箇中介。它能夠把windows域賬號裏的用戶和組信息,映射成liunx的用戶組。

samba-common-3.6.23-46el6_9.i686 #主要提供samba服務器的設置文件與設置文件語法檢驗程序testparm

samba-3.6.23-46el6_9.i686 #服務器端軟件,主要提供samba服務器的守護程序,共享文檔,日誌的輪替,開機默認選項Samba服務器安裝完畢,會生成配置文件目錄/etc/samba和其它一些samba可執行命令工具,/etc/samba/smb.conf是samba的核心配置文件,/etc/init.d/smb是samba的啓動/關閉文件。

 

啓動Samba服務器&設置開機啓動:

配置Samba服務:

Samba主配置文件爲/etc/samba/smb.conf

由Global Setting 和 Share Definitions構成。

全局參數:

[global]

security = user #這裏指定samba的安全等級。關於安全等級有四種:

share:用戶不須要帳戶及密碼便可登陸samba服務器

user:由提供服務的samba服務器負責檢查帳戶及密碼(默認)

server:檢查帳戶及密碼的工做由另外一臺windows或samba服務器負責

domain:指定windows域控制服務器來驗證用戶的帳戶及密碼。

smbpasswd:該方式是使用smb工具smbpasswd給系統用戶(真實用戶或者虛擬用戶)設置一個Samba 密碼,客戶端就用此密碼訪問Samba資源。smbpasswd在/etc/samba中,有時須要手工建立該文件。

tdbsam:使用數據庫文件建立用戶數據庫。數據庫文件叫passdb.tdb,在/etc/samba中。passdb.tdb用戶數據庫可以使用smbpasswd –a建立Samba用戶,要建立的Samba用戶必須先是系統用戶。也可以使用pdbedit建立Samba帳戶。pdbedit參數不少,列出幾個主要的:

pdbedit -a username:新建Samba帳戶。

pdbedit -x username:刪除Samba帳戶。

pdbedit -L:列出Samba用戶列表,讀取passdb.tdb數據庫文件。

pdbedit -Lv:列出Samba用戶列表詳細信息。

pdbedit -c 「[D]」 -u username:暫停該Samba用戶帳號。

pdbedit -c 「[]」 -u username:恢復該Samba用戶帳號。

netbios name = MYSERVER  # 設置出如今「網上鄰居」中的主機名

hosts allow = 192.168.2.  192.168.3. # 用來設置容許的主機,若是在前面加」;」則表示容許全部主機

log file = /var/log/samba/%m.log #定義samba的日誌,這裏的%m是上面的netbios name

max log size = 50 # 指定日誌的最大容量,單位是K。

 

例:共享一個目錄,任何人均可以訪問,即不用輸入密碼便可訪問,要求只讀。

[global]部分

把」MY GROUP」改爲」WORKGROUP」

把」 security = user」 修改成 「security = share」

而後在文件的最末尾處加入如下內容:

例:共享一個目錄,使用用戶名和密碼登陸後才能夠訪問,要求能夠讀寫。

使用linux訪問samba服務器:

安裝了samba-client軟件包,安裝完後就可使用smbclient命令。

smbclient //IP/共享名  -U 用戶名

經過mount掛載:

 

連接 :

Samba詳解 :http://blog.51cto.com/hmtk520/2065710

Linux系統怎麼搭建Samba共享服務器? : https://www.jb51.net/LINUXjishu/315102.html

Linux環境下Samba文件共享服務 :   https://mp.weixin.qq.com/s/BxyVt0kV-Q9W2QtLWc-inA

centos中samba服務不能訪問如何解決?  :  https://www.jb51.net/os/RedHat/538934.html

CentOS 6.3下Samba服務器的安裝與配置方法(圖文詳解)  :  https://www.jb51.net/os/RedHat/398108.html

CentOS下郵件服務sendmail的安裝及簡單配置  : https://www.jb51.net/os/RedHat/391912.html

用CentOS搭建文件服務器(Samba)  :  https://www.jb51.net/os/RedHat/32191.html

 

搭建samba服務,實現局域網文件共享      :      http://blog.51cto.com/13728740/2137366

在ubuntu中部署samba服務器的方法 : https://www.jb51.net/article/95370.htm

SAMBA客戶端提示 NT_STATUS_HOST_UNREACHABLE 錯誤提示的解決辦法 : https://blog.51cto.com/lisiyun/p3

相關文章
相關標籤/搜索