天天看點

SAMBA安全模式share及user執行個體詳解

1、share伺服器執行個體及詳解

如果公司現在用一個工作組Workgroup需要添加samba伺服器作為檔案伺服器,并釋出共享目錄/share,共享名為public,這個共享目錄允許所有公司員工通路。

我們分析下,這個案例屬于samba的基本配置,我們可以實用share安全級别模式,既允許所有員工通路,則需要為每個使用者建立一個samba帳号,那麼如果公司擁有大量使用者呢?

1000個使用者,100000個使用者,一個個設定會非常滴麻煩,我們可以通過配置security=share來讓所有使用者登入時采用匿名帳戶nobody通路,這樣實作起來非常簡單

1)修改samba主配置檔案smb.conf

vi /etc/samba/smb.conf

(1).設定samba伺服器工作組名為Workgroup

(2).添加samba伺服器注釋資訊為"FileServer"

(3).設定samba安全級别為share模式,允許使用者匿名通路

#======================= Global Settings =====================================

[global]

# workgroup = NT-Domain-Name or Workgroup-Name, eg: MIDEARTH

workgroup = Workgroup

# server string is the equivalent of the NT Description field

server string = FileServer

username map = /etc/samba/smbusers

# Security mode. Defines in which mode Samba will operate. Possible

# values are share, user, server, domain and ads. Most people will want

# user level security. See the Samba-HOWTO-Collection for details.

security = share

(4).設定共享目錄的共享名為public

(5).設定共享目錄的絕對路徑為/share

(6).最後我們設定允許匿名通路

# A publicly accessible directory, but read only, except for people in

# the "staff" group

[public]

comment = Public

path = /share

public = yes

writable = yes

printable = no

; write list = @staff

設定完smb.conf 後儲存退出

2)重新加載配置

上面我們說過,Linux 為了使新配置生效,需要重新加載配置,可以使用restart 重新啟動服務或者使用reload 重新加載配置

注意:

這裡強調一下細節,重新開機samba 服務,雖然可以讓配置生效,但是restart 是先關閉samba 服務,再開啟服務,這樣如果在公司網絡營運中肯定會對用戶端員工的通路造成影響,建議使用reload 指令重新加載配置檔案使其生效,這樣不需要中斷服務就可以重新加載配置

[root@rusky2 samba]# service smb restart

Shutting down SMB services: [ OK ]

Shutting down NMB services: [ OK ]

Starting SMB services: [ OK ]

Starting NMB services: [ OK ]

[root@rusky2 samba]# service smb reload

Reloading smb.conf file: [ OK ]

samba 伺服器通過以上設定,現在使用者就可以不需要輸入帳号和密碼就可以直接登入samba伺服器并通路public 共享目錄

我們測試下,在/share 目錄下建個檔案試下:touch test

然後通過windonws通路samba伺服器共享檔案。

SAMBA安全模式share及user執行個體詳解

2、user伺服器執行個體及詳解

上面的案例我們講了 share 安全級别模式的samba 伺服器,可以實作使用者友善滴通過匿名方式通路,但是如果在我們samba 伺服器上存在重要檔案的目錄,為了保證系統安全性及資料保密性,我們就必須對使用者進行篩選,允許或禁止相應的使用者通路指定滴目錄,這裡share 安全級别模式就不能滿足我們這樣的實際要求了。

實作使用者身份驗證的方法很多,我們可以将安全級别模式配置為user、server、domain 和ads,但是最常用的還是user安全級别模式,下面偶就來看下user這個安全級别模式的配置。

如果公司有多個部門,因工作需要,我們就會分門别類的建立相應部門的目錄,并将銷售部的資料存放在samba 伺服器的/companydata/sales/目錄下,集中管理,以便銷售人員浏覽,并且該目錄隻允許銷售部員工通路。

我們分析下,在/companydata/sales/目錄中存放有銷售部的重要資料,為了保證其他部門無法檢視其内容,我們需要将全局配置中security 設定為user安全級别,這樣就啟用了samba伺服器的身份驗證機制,然後在共享目錄/companydata/sales 下設定valid users 字段,配置隻允許銷售部員工能夠通路這個共享目錄。

1)添加銷售部使用者群組并添加相應samba 帳号

使用 groupadd 指令添加sales 組,然後執行useradd 指令和passwd 指令添加銷售部員工的帳号及密碼:

添加系統組和使用者,并為使用者設定密碼

添加samba使用者

2)修改samba 主配置檔案smb.conf

(1).設定user安全級别模式

security = user

(2).設定銷售部共享目錄為sales

(3).指定共享目錄為絕對路徑為/companydata/sales,手動到根目錄下建立該目錄 mkdir -p /companydata/sales

(4).設定可以通路的使用者為sales 組成員

  comment = Public

  path = /share

  public = yes

; write list = @staff

[sales]

  #設定共享目錄名為sales

  comment = sales data

  path=/companydata/sales

  #設定共享目錄的絕對路徑為:/companydata/sales

  valid users = @sales

  #設定隻允許銷售部sales組員可以通路

3)重新加載配置

上個案例講過了,要讓修改後的Linux 配置檔案生效,我們就要重新加載配置。

任何使用者登入可通路public目錄,隻sales組的使用者輸入使用者名和密碼之後可通路sales目錄。

SAMBA安全模式share及user執行個體詳解

繼續閱讀