SUSE Linux EnterpriseŽ 中的 samba 伺服器可以兩種方式設定:以 YaST 設定或手動設定。手動設定組態可以提供較詳細的設定,但是缺乏 YaST GUI 提供的方便性。
若要設定 Samba 伺服器,請啟動 YaST 並選取
+ 。第一次啟動模組時,會啟動 對話方塊,提示您決定有關伺服器管理的一些基本設定,然後在組態設定結束時,會出現提示要您輸入 Samba root 的密碼。之後啟動時,會顯示 對話方塊。Samba 伺服器安裝
在
中選取現有的名稱,或輸入新的名稱,並按一下 。在下一個步驟中,指定您的伺服器是否應做為 PDC,並按一下
。之後,您可以用
對話方塊的 索引標籤變更 中的所有設定。第一次啟動 Samba 伺服器模組時,
對話方塊會緊跟在 對話方塊之後顯示。用此調整您的 Samba 伺服器組態。編輯組態之後,按一下
關閉組態。在此索引標籤中,您也可以開啟您的防火牆中的連接埠。若要執行此動作,請選取
。如果您有多個網路介面,請按一下 ,選取介面,並按一下 來選取 Samba 服務的網路介面。在索引標籤
中,您可決定 LDAP 伺服器是否使用驗證。若要測試 LDAP 伺服器的連線,請按一下 。若要查看進階 LDAP 設定或使用者預設值,請按一下 。如需更多有關 LDAP 組態的詳細資訊,請參閱第 36 章「LDAP—一種目錄服務」。
另一種管理 Samba 伺服器的工具是 SWAT (Samba Web Administration Tool,Samba 網頁管理工具)。它提供簡單的網頁介面,以用於設定 Samba 伺服器。若要使用 SWAT,請在網頁瀏覽器中開啟 http://localhost:901,並以 root
使用者的身份登入。如果您沒有特殊的 Samba root 帳戶,請使用系統的 root
帳戶。
![]() | 啟用 SWAT |
---|---|
安裝 Samba 伺服器後,並不會啟用 SWAT。若要啟用 SWAT,請在 YaST 中開啟 + ,啟用網路服務組態,選取表格中的 ,並按一下 。 |
如果您想要使用 Samba 做為伺服器,請安裝 samba
。Samba 的主要組態檔為 /etc/samba/smb.conf
。這個檔案可以分成兩個邏輯部份。[global]
區段包含中央與全域設定值。[share]
區段包含個別檔案與印表機共享。利用此方法,就可以在 [global]
區段中以不同的方式或以全域方式設定關於共享的細節,它可以加強組態檔的結構透明化。
下列 [global]
區段的參數需要做一些調整,以符合網路設定的需求,讓其他機器可以透過 Windows 環境中的 SMB 存取 Samba 伺服器。
這一行是將 Samba 伺服器指定給工作群組。以網路環境中適當的工作群組取代 TUX-NET
。除非您已將這個名稱指定給網路中的其他機器,否則 Samba 伺服器將會以其 DNS 名稱來顯示。如果沒有 DNS 名稱,請使用 netbiosname=MYNAME
設定伺服器名稱。如需關於此參數的詳細資訊,請參閱 mansmb.conf
。
此參數會觸發 Samba 伺服器是否嘗試變成其工作群組的 LMB (本地主要的瀏覽器)。請選擇一個非常低的值,以使現有的 Winodws 網路能避免設定不當的 Samba 伺服器所造成的任何問題。如需關於此重要主題的詳細資訊,請參閱套件文件中 textdocs
子目錄下的 BROWSING.txt
與 BROWSING-Config.txt
檔案。
如果沒有其他的 SMB 伺服器在網路中 (例如,Windows NT 或 2000 伺服器),而且您想要 Samba 伺服器保留在本地環境中所存在的所有系統清單,請將 os level
設成更高的值 (例如,65
)。接著就會將 Samba 伺服器選擇成本地網路的 LMB。
當變更此設定值時,請小心地考慮這個值將會如何影響現有的 Windows 網路環境。首先請在獨立的網路中或在一天中非重要的時間測試變更。
若要將 Samba 伺服器整合至含有主動 WINS 伺服器的現有 Windows 網路中,請啟用 wins server
選項,並將其值設為該 WINS 伺服器的 IP 位址。
如果您的 Windows 機器已連接至獨立的子網路中,而且應該要能夠看到彼此,則需要設定 WINS 伺服器。若要將 Samba 伺服器變成像這樣的 WINS 伺服器,請設定 wins support = Yes
選項。請確定網路中只有一個 Samba 伺服器啟用了這個設定值。wins server
與 wins support
選項絕不能在 smb.conf
檔案中同時啟用。
下列範例說明如何將 CD-ROM 光碟機與使用者目錄 (homes
) 開放給 SMB 用戶端使用。
若要避免不小心將 CD-ROM 光碟機開放成共享,請以備註符號停用這些行 (在此例中為分號)。請在第一個資料欄中移除分號,以便和 Samba 共享 CD-ROM 光碟機。
[cdrom]
and comment
[cdrom]
這個項目是在網路上所有的 SMB 用戶端都可以看到的共享名稱。可以另外再加入一個 comment
,以進一步描述共享。
path = /media/cdrom
path
會輸出 /media/cdrom
目錄。
利用限制非常嚴格的預設組態,就可以將這種共享只開放給出現在此系統上的使用者共享。如果這個共享應該開放每個人使用,請將 guest ok = yes
加入組態。這個設定值可以將讀取權限開放給網路上的每個人使用。建議您處理此參數時必須極為小心。這將會在 [global]
區段中套用更多此參數的使用。
[homes]
[home]
共用在這裏特別重要。如果使用者擁有 Linux 檔案伺服器以及其自己主目錄的有效帳戶與密碼,就可以連接到主目錄。
範例 37.2. 主目錄共享
[homes] comment = Home Directories valid users = %S browseable = No read only = No create mask = 0640 directory mask = 0750
只要沒有其他的共享,使用共享的使用者名稱連接至 SMB 伺服器,就會使用 [homes]
共享指示來動態產生共享。共享的產生名稱是使用者名稱。
valid users = %S
只要成功地建立連接,就會以共享的具體名稱取代 %S
。[homes]
共享,永遠為使用者名稱。因此,使用者共享的存取權限僅限於使用者。
browseable = No
這個設定值讓共享在網路環境變成無形的。
read only = No
根據預設,Samba 會利用 read only = Yes
參數,以禁止寫入任何輸出共享的權限。若要開放共享為可寫入的,請設定 read only = No
的值,這與 writable = Yes
同義。
create mask = 0640
以 MS Windows NT 為基礎的系統將無法理解 UNIX 權限的概念,因此在建立檔案時,它們將無法指定權限。create mask
參數可以定義指定給新建立檔案的存取權限。這只會套用至可寫入的共享。實際上,這個設定值表示擁有者具有讀取與寫入權限,而擁有者的主要群組成員則具有讀取權限。valid users = %S
可以在即使群組具有讀取權限時禁止讀取權限。若想要使群組具有讀取或寫入權限,請停用 valid users = %S
一行。
為了提高安全性,每個共用存取權都以密碼保護。SMB 具有三個檢查權限的可能方法:
每個共享都必須指定密碼。每個知道此密碼的人員都具有該共享的存取權。
這個變化引用了使用者對 SMB 的概念。每個使用者都必須以自己的密碼註冊伺服器。在註冊後,伺服器可以視使用者名稱將存取權授予個別輸出的共用。
對其用戶端而言,Samba 會模擬在使用者層級模式中工作。不過,它會將所有的密碼查詢傳遞給另一個將會處理驗證的使用者層級模式伺服器。這個設定值將需要另一個參數 (password server
)。
共用、使用者或伺服器層級安全性的選擇會套用至整部伺服器。因為無法針對伺服器組態的個別共用提供共用層級的安全性,並針對其他的共用提供使用者層級的安全性。然而,您可以針對系統上每個設定的 IP 位址執行個別的 Samba 伺服器。
在「Samba HOWTO 文件集」中可以找到關於此主題的詳細資訊。至於在一個系統上的多個伺服器,請注意 interfaces
與 bind interfaces only
選項。