做為登入伺服器的 Samba

在以 Windows 用戶端為主的網路中,通常會建議使用者只註冊一個有效的帳戶與密碼。在以 Windows 為基礎的網路中,這個任務是由主要網域控制器 (PDC) 來處理。您可以使用已設定為 PDC 的 Windows NT 伺服器,但也可借助 Samba 伺服器完成此任務。在 smb.conf[global] 區段中必須編輯的項目如 範例 24.1 「在 smb.conf 中的全域區段」 所示。

範例 24.1. 在 smb.conf 中的全域區段

[global]
    workgroup = TUX-NET
    domain logons = Yes
    domain master = Yes

如果使用加密密碼進行驗證,則 Samba 伺服器必須能夠處理這些密碼。在 [global] 區段中的 encrypt passwords = yes 項目可以啟用此功能 (加上 Samba 版本 3,現在這個是預設值)。除此之外,必須準備符合 Winodws 加密格式的使用者帳戶與密碼。此操作可使用指令 smbpasswd -a name 來完成。使用下列指令為電腦建立網域帳戶 (Windows 網域概念所需):

useradd hostname\$
smbpasswd -a -m hostname

使用 useradd 指令,就會加上貨幣符號。當使用 -m 參數時,smbpasswd 指令就會自動插入這個符號。加備註的組態範例 (/usr/share/doc/packages/Samba/examples/smb.conf.SuSE) 包含一些設定,可讓此任務自動執行。

add machine script = /usr/sbin/useradd -g nogroup -c "NT Machine Account" \
-s /bin/false %m\$
     

為確保 Samba 可正確執行此程序檔,請選擇擁有所需之管理員權限的 Samba 使用者,並將其新增至 ntadmin 群組。這樣就可以透過下列指令將 Domain Admin 狀態指定給此 Linux 群組內的所有使用者:

net groupmap add ntgroup="Domain Admins" unixgroup=ntadmin

如需有關此主題的詳細資訊,請參閱《Samba 3 HOWTO》(/usr/share/doc/packages/samba/Samba3-HOWTO.pdf) 的第 12 章。