将 Samba 用作登录服务器将 Samba 用作登录服务器

在主要由 Windows 客户机组成的网络中,使用户只能使用有效帐户和密码进行注册通常是最好的选择。 在基于 Windows 的网络中,此任务由主域控制器 (PDC) 来处理。 您可以使用配置为 PDC 的 Windows NT 服务器,但是此任务也可以借助 Samba 服务器来完成。 中显示了必须在 smb.conf[global] 部分设置的项。例 36.3 “smb.conf 中的 global 部分”

例 36.3. smb.conf 中的 global 部分

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

如果将已加密密码用于校验目的(这是保持完好的 MS Windows 9X 安装、MS Windows NT 4.0 service pack 3 和所有以后版本产品的默认设置),则 Samba 服务器必须能够处理它们。 [global] 部分中的 encrypt passwords = yes 项启用了此功能(对于 Samba 版本 3,这是默认设置)。此外,还需要以适合 Windows 的加密格式来准备用户帐户和密码。 使用命令 smbpasswd-a name 可完成此任务。 使用以下命令为计算机创建 Windows NT 域概念要求的域帐户:

例 36.4. 设置计算机帐户

useradd hostname\$
smbpasswd -a -m hostname

使用 useradd 命令可添加一个美元符号。 命令 smbpasswd 在使用参数 -m 时自动插入此符号。 带注释的配置示例 (/usr/share/doc/packages/Samba/examples/smb.conf.SuSE) 包含自动执行此任务的设置。

例 36.5. 计算机帐户的自动设置

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

为了确保 Samba 可以正确执行此脚本,应选择具有所需管理员权限的 Samba 用户。 为此,请选择一个用户并将其添加到 ntadmin 组。 然后可以使用以下命令来为属于此 Linux 组的所有用户指派 Domain Admin 状态:

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

有关此主题的详细信息,请参见位于 /usr/share/doc/packages/samba/Samba-HOWTO-Collection.pdf 的 Samba HOWTO 文档集的第 12 章。