配置 Linux Server for ZENworks 文件访问

将 Linux 服务器用作 ZENworks 文件存储和访问的“后端”时,必须对其进行配置(在安装 ZENworks Desktop Management 服务器之前或之后),以便 ZENworks 稍后可访问存储在此的文件。

注意:  设置用于文件访问的 Linux 服务器是可选的,可将 NetWare(R) 或 Windows 服务器设置为在使用 Linux 后端服务器的同时进行文件访问。

本部分包括有关配置供 ZENworks 文件访问的 SLES 服务器(而非 Novell OES 服务器)的信息。OES Linux 已包括 Novell eDirectoryTM,并提供对其文件系统的 Novell Storage Services(NSS) 访问。因此,存储在 OES Linux 服务器上的策略或应用程序文件可只用 UNC 样式的路径(即 \\OES_server_name/sys/public/...),而不必进一步进行 ZENworks 文件访问配置。

配置 SLES 服务器来启用文件访问需要配置 Samba 服务器软件,以从 Active Directory 域或 eDirectory 树获得鉴定信息,然后在服务器上创建一个或多个 Samba 共享。这允许由目录管理共享。

本部分旨在提供表明如何完成所需鉴定的基本方法。配置 Samba 有多种方式。有关更多信息,请参见 Samba 文档集

本部分包括下列信息:


在 Active Directory 环境中配置 Linux 服务器

如果计划在要安装 ZENworks Management Server 的 SLES 9 服务器上使用 Active Directory,需启用基于目录的 CIFS,来访问要存储到 ZENworks 所用服务器上的应用程序和其他文件。

重要:  尽管不建议这样做,不过用户可从安装 Novell ClientTM 的 Windows 工作站访问 OES 服务器/Samba 共享,但需配置 Samba 来提供与 OES 服务器名不同的 netBIOS 名称。

本部分包含下列信息。


配置 Samba 以使用 Kerberos

使用下列步骤配置 SLES 9 服务器,以用 Kerberos* 进行鉴定:

  1. 编辑 Kerberos(heimdal-lib 版本 0.6 或更高版本)配置文件,以指明要加入的 Active Directory 域。

    1. 用文本编辑器打开 Linux 服务器上的 /etc/krb5.conf。

    2. 在文件中查找以下各行:

      [libdefaults]
                default_realm = YOUR.KERBEROS.REALM

      [realms]
                YOUR.KERBEROS.REALMS = {
                kdc = your.kerberos.server
                }

    3. 按如下修改这些行:

      [libdefaults]
                default_realm = DOMAIN_NAME

      [realms]
                DOMAIN_NAME = {
                kdc = wins_name
                admin_server = wins_name
                kpasswd_server = wins_name
                }

      示例中显示的 DOMAIN_NAME 值为要加入的 Active Directory 域的完全限定名称(例如 RESEARCH.MYLOCATION.MYCOMPANY.COM)。确保用大写字符输入此名称。

      修订的 kdc 行、新增加的 admin_server 和 kpasswd_server 行中显示的 wins_name 值是域中的主域控制器或任何域控制器(例如 DC1)。

  2. 编辑 Samba 服务器配置文件,以表明 Kerberos 用来将用户鉴定到 Active Directory 域。

    1. 用文本编辑器打开 Linux 服务器上的 /etc/samba/smb.conf。

    2. 在文件的“Global”部分查找下列行:

      security = user

    3. 修改此行,并按如下添加更多行:

      security = ADS
      realm = YOUR.KERBEROS.REALM
      encrypt passwords = yes
      netbios name = advertised_name

      示例中显示的 YOUR.KERBEROS.REALM 值是 krb5.conf 文件中指定的域名(参见步骤 1.c)。

      netbios 名称行中显示的 advertised_name 值是 Samba 服务器的公开网络名及其在 Active Directory 中的名称(例如 myserver_smb)。

  3. 将服务器名称输入 Active Directory 树枝中:

    1. 在 Linux 服务器命令行中输入下列命令:

      kinit administrator@YOUR.KERBEROS.REALM

      此示例中显示的 YOUR.KERBEROS.REALM 值是 krb5.conf 文件中指定的域名。

    2. 在 Linux 服务器命令行中输入下列命令:

      net ads join


设置 Samba 共享

必须创建 Samba 共享,以便 Windows 工作站访问 SLES 9 服务器上的文件。

  1. 用文本编辑器打开 Linux 服务器上的 /etc/samba/smb.conf,然后将下列行添加进该文件:

    [sharename]
    path = local_directory
    guest ok = no
    read only = no

    第一行中显示的 sharename 值是 Samba 共享的公开网络名(例如 zenfiles)。

    第二行中显示的 local_directory 值是共享要驻留的服务器上的本地目录。

  2. 将访问共享的所有用户映射到单一 Linux 帐户。

    1. 在 Linux 服务器命令行中输入下列命令:

      /usr/sbin/useradd new_account_name

      new_account_name 参数是创建的 Linux 帐户(例如 smbuser)。

    2. 查找 Linux 服务器上的 /etc/samba/smbusers 文件。

    3. 将下列行添加进文件:

      new_account_name = *

      此行中的 new_account_name 值是在步骤 2.a 中创建的帐户名。

  3. 在 Linux 服务器命令行中输入下列命令,以将路径所有权更改为共享:

    mkdir -p directory_name

    chown -R Linux_account_name directory_name

    chmod 755 directory_name

    directory_name 值是在步骤 1 中指定的本地目录的路径。

    Linux_account_name 值是在步骤 2.a 中指定的“新帐户名”。

  4. 在 Linux 服务器命令行中输入下列命令,重启 Samba 服务器,以便用其新参数执行配置文件:

    /etc/init.d/smb restart


在 eDirectory 环境下配置 Linux 服务器

如果计划在要安装 ZENworks Management Server 的 SLES 9 服务器上使用 eDirectory,需启用基于目录的 CIFS,来访问要存储到 ZENworks 所用服务器上的应用程序和其他文件。

本部分包括在 eDirectory 环境下使用 ZENworks Desktop Management 配置 SLES 9 服务器时需了解的信息:


使用 LDAP 配置 Linux 鉴定到 eDirectory

本部分说明配置 SLES 9 服务器(作为 LDAP 客户机)和 Novell eDirectory(作为 LDAP 服务器),以通过 LDAP 将鉴定重定向到 Novell eDirectory 所需的步骤。本内容假定 Novell eDirectory 8.7.3 已安装到 SLES 9 服务器上。

配置服务器后,任何用户可用其 eDirectory 身份凭证登录到 SLES 9 服务器上。

按以下列出的顺序使用下列过程:

  1. 扩展 eDirectory 纲要用于 Linux 帐户鉴定
  2. 扩展 Samba 的 eDirectory 纲要
  3. 创建用于匿名联结的代理用户
  4. 配置 LES 9 服务器(LDAP 客户机)
  5. 配置用于 Linux 鉴定的 eDirectory 帐户

扩展 eDirectory 纲要用于 Linux 帐户鉴定

配置 SLES 9 server for eDirectory 鉴定需要扩展现有的 eDirectory 纲要(已通过安装 ZENworks 扩展 OES 服务器上的纲要)。

可用 ndsschema 实用程序或 ICE 实用程序实现纲要扩展。这两个实用程序都驻留在 SLES 9 服务器上。本部分提供两个实用程序的命令行语法。

重要:  使用 ICE 实用程序前,必须确保用 ConsoleOne 检查将要使用的 eDirectory 树中“LDAP 组”对象的属性。

右击“LDAP 组”对象,单击“属性”,单击“通用”,然后取消选择“要求 TLS 与口令简单联结”。

为 Linux 帐户鉴定定义的纲要定义在 RFC 2307 中。Novell 提供传统 eDirectory 纲要格式和轻量级数据交换格式 (Lightweight Data Interchange Format,LDIF) 的纲要导入文件,用于扩展 Novell eDirectory 纲要。

下列步骤可用于扩展您所在环境中的 eDirectory 纲要:

  1. 作为根用户登录到运行 Novell eDirectory 的 Linux 服务器上。

  2. 在 bash 提示符处输入 cd /usr/lib/nds-schema

  3. 运行实用程序来扩展纲要。

    • ndsschema 方法: 在 bash 提示符处输入下列命令来扩展纲要:

      ndssch cn=admin_name.o=admin_container_name rfc2307-usergroup.sch

    • ICE 方法: 在 bash 提示符处输入下列命令来扩展纲要:

      ice -S LDIF -f rfc2307-usergroup.ldif -D LDAP -s localhost -d cn=admin_name,o=admin_container_name -W


扩展 Samba 的 eDirectory 纲要
  1. 在 bash 提示符处输入下列命令:

    cd /usr/share/doc/packages/samba/examples/LDAP

    此位置由 samba-doc RPM 包提供。或者,可用下列命令查找 samba-client RPM 包中的纲要文件:

    cd /usr/share/samba/LDAP

  2. 输入下列命令,以用 ICE 实用程序扩展 Samba 的 eDirectory 纲要:

    ice -S LDIF -f samba-nds.schema -D LDAP -s localhost -d cn=admin_name,o=admin_container_name -W


创建用于匿名联结的代理用户

用下列步骤在 eDirectory 中设置用于匿名联结的代理用户:

  1. 在 ConsoleOne 中创建新用户帐户,并将口令设置为空。出现提示时切勿单击“取消”,而应单击“确定”,以便生成公共密钥/私有密钥。

  2. 右击新用户对象,单击“属性”,单击“口令限制”,然后取消选择“允许用户更改口令”。

  3. 在树的根对象中,右击对象,选择此对象的受托者,授予新用户浏览项权限,然后授予新用户有关下列特性的读取和比较属性权限:

    CN
    说明
    O
    OU
    对象类
    dc
    gecos
    gidNumber
    homeDirectory
    loginShell
    memberUid
    uidNumber
    uniqueID

    注意:  确保在进行配置时为每个特性选择“可继承”。

  4. 从此用户对象的特性列表中去除[所有特性权限]。

  5. 右击“LDAP 服务器”对象,单击“属性”,单击“通用”,然后选择此新用户作为代理用户。

  6. 右击“LDAP 组”对象,单击“属性”,单击“通用”,然后选择“立即刷新 NLDAP 服务器”。


配置 LES 9 服务器(LDAP 客户机)
  1. 启动 YaST2 控制中心。

    1. 运行 /sbin/yast2

    2. 键入 menu

  2. 从菜单中选择“网络服务”,选择“LDAP 客户机”,然后选择“使用 LDAP”。

    作为可替代 1 和 2 的步骤,可只从命令行运行 /sbin/yast2 ldap,以打开 LDAP 客户机配置窗口。

  3. 在服务器字段添加 LDAP 服务器,以及用户所在位置的搜索库。例如:

    基本 DN: ou=users,ou=novell

    LDAP 服务器的地址: 127.0.0.1

  4. 选择 LDAP TLS/SSL,然后单击“完成”保存更改。


配置用于 Linux 鉴定的 eDirectory 帐户

使用下列步骤将 posixAccount 辅助类添加到用户帐户,并设置所需的字段:

  1. 在 ConsoleOne 中高亮显示并右击用户帐户。

  2. 选择此对象的扩展。

  3. 单击“添加扩展”。

  4. 在列表中选择 posixAccount,然后单击“确定”。

  5. 在“通用编辑”对话框中单击“确定”。

  6. 在“新建 posixAccount”对话框中填写字段。下表显示字段名及其用途,以及应填写的数据示例。

    字段名 用途 示例

    名称:

    此扩展的名称

    posixAccount

    homeDirectory:

    用户主目录

    /home/tjones

    uniqueID:

    用户的唯一 ID

    tjones

    常用名:

    Linux gecos 字段

    Trevor Jones

    gidNumber:

    Linux 中的 GID

    515

    uidNumber:

    Linux 中的 GID

    515

    需要并可在用户对象的“其他”页添加的其他特性包括:

    字段名 用途 示例

    loginShell

    设置用户的壳层。SUSE Linux 需要 loginShell 特性来进行正确 X 登录。

    /bin/bash

  7. 单击“确定”保存更改。


为任何用户创建 Samba 身份凭证

可将任何受管用户的 Samba 身份凭证与标准的 Linux 身份凭证分离。使用下列步骤为任何用户帐户添加 Samba 身份凭证。

  1. 在 SLES 9 服务器上作为根用户登录,然后在 bash 提示符处输入下列命令:

    smbpasswd -a username

    此配置向要登录服务器的用户提示有关服务器的 Samba 口令。在此语法中,username 是用户的 eDirectory 用户名。当配置为 LDAP 客户机时,用户需处于指定为基本 DN 的环境中。有关更多信息,请参见配置 LES 9 服务器(LDAP 客户机)

    注意:  这是创建 Samba 帐户的基本方法。有多个实用程序和方法可用于通过一个命令来维护 Linux 和 Samba 口令。有关更多信息,请参见 Samba 文档集


设置 Samba 共享

必须创建 Samba 共享,以便 Windows 工作站访问 SLES 9 服务器上的文件。

  1. 用文本编辑器打开 Linux 服务器上的 /etc/samba/smb.conf,然后将下列行添加进文件:

    [sharename]
    path = local_directory
    guest ok = no
    read only = no

    注意:  第一行中显示的 sharename 值是 Samba 共享的公开网络名(例如 zenfiles)。

    第二行中显示的 local_directory 值是共享要驻留的服务器上的本地目录。

  2. 在 Linux 服务器命令行中输入下列命令,以将路径所有权更改为共享:

    mkdir -p directory_name

    chown -R admin_user_name

    chmod 755 directory_name

    注意:  admin_user_name 值是在 ZENworks 中创建策略和应用程序时所用的用户名。此用户名用于访问 Samba 共享。

    directory_name 值是您在步骤 1 中指定的本地目录的路径。

  3. 在 Linux 服务器命令行中输入下列命令,重启 Samba 服务器,以便用其新参数执行配置文件:

    /etc/init.d/smb restart


访问 SLES 9 服务器中与工作站关联的 ZENworks 文件(方案 A)

如需用 eDirectory 方法访问 SLES 9 服务器上与工作站关联的策略和应用程序文件,必须将 Samba 共享标记为允许以“客人”身份访问。使用下列步骤标记 Samba 共享:

  1. 用文本编辑器打开服务器上的 /etc/samba/smb.conf。

  2. 在文件的 [sharename] 部分查找下列行:

    guest ok = no

    注意:  第一行中显示的 sharename 值是 Samba 共享的公开网络名(例如 zenfiles)。

  3. 按如下修改该行:

    guest ok = yes


访问 SLES 9 中与工作站关联的 ZENworks 文件(方案 B)

如果用 Windows 中间层服务器访问使用 eDirectory 方法的 SLES 9 服务器上与工作站关联的策略和应用程序文件,不必将 Samba 共享标记为“全部可读”(请参见上述的步骤 3),允许以“客人”身份访问。用下列步骤来允许访问文件:

  1. 确保安装期间创建中间层时,输入 Windows 中间层服务器(共享身份凭证)。也可用 NSAdmin 实用程序(LMAUTH 身份凭证)在中间层对其进行配置。

  2. 确保中间层服务器本地具有相同的身份凭证。

即使有防火墙,中间层也可代表工作站访问 ZENworks 文件。


定义受限用户

可修改 smb.conf 文件,以便定义需限制其文件修改权限的用户。用下列步骤定义受限用户。

  1. 用文本编辑器打开服务器上的 /etc/samba/smb.conf。

  2. 在文件的 [sharename] 部分查找下列行:

    read only = no

    注意:  第一行中显示的 sharename 值是 Samba 共享的公开网络名(例如 zenfiles)。

  3. 按如下修改该行:

    read only = yes

  4. 在 bash 提示符处输入下列命令:

    write list = admin_user_name

注意:  admin_user_name 值是对 Samba 共享上的文件只有“读”权限的用户名(或用逗号分隔的用户名列表)。