要在 VMware Horizon 8 桌面环境中的即时克隆 Linux 虚拟机 (VM) 上支持 SSO,请在最佳配置映像 Linux 虚拟机上配置 Samba。

Samba 支持运行 Horizon Agent 支持的任何 Linux 分发包的即时克隆桌面脱机域加入 Active Directory。但是,VMware 建议对运行较新分发包的桌面使用 SSSD 身份验证,而仅对运行较旧分发包的桌面使用 Samba,如以下注释中所述。

注:
  • VMware 建议对运行以下 Linux 分发包的桌面使用 SSSD 身份验证方法(而不是 Samba)。
    • Ubuntu 20.04/22.04
    • Debian 11.x
    • RHEL 8.x/9.x
    • Rocky Linux 8.x/9.x
    • SLED/SLES 15.x
  • VMware 建议对运行以下 Linux 分发包的桌面使用 Samba 方法。
    • Debian 10.x
    • RHEL/CentOS 7.9

以下面的过程为例,使用 Samba 对即时克隆的 Linux 虚拟机执行脱机域加入,以将其加入到 Active Directory (AD)。此过程提供了适用于 Ubuntu 系统的步骤。

过程

  1. 在最佳配置映像 Linux 虚拟机上,安装 winbindsamba 软件包。
    sudo apt install samba krb5-config krb5-user winbind libpam-winbind libnss-winbind
    如果需要,请安装任何依赖库,例如 smbfssmbclient
  2. 使用以下命令安装 Samba tdb-tools 软件包。
    sudo apt install tdb-tools
  3. 安装适用于 Linux 的 Horizon Agent。请参阅在 Linux 虚拟机上安装 Horizon Agent
  4. /etc/samba/smb.conf 配置文件进行编辑,使其具有类似于以下示例的内容。
    [global]
    security = ads
    realm = LAB.EXAMPLE.COM
    workgroup = LAB
    idmap uid = 10000-20000
    idmap gid = 10000-20000
    winbind enum users = yes
    winbind enum groups = yes
    template homedir = /home/%D/%U
    template shell = /bin/bash
    client use spnego = yes
    client ntlmv2 auth = yes
    encrypt passwords = yes
    winbind use default domain = yes
    restrict anonymous = 2
  5. 编辑 /etc/krb5.conf 配置文件,以使其具有类似于以下示例的内容。
    [libdefaults]
    default_realm = EXAMPLE.COM
    
    krb4_config = /etc/krb.conf
    krb4_realms = /etc/krb.realms
    
    kdc_timesync = 1
    ccache_type = 4
    forwardable = true
    proxiable = true
    
    [realms]
    EXAMPLE.COM = {
    kdc = 10.111.222.33
    }
    
    [domain_realm]
    example.com = EXAMPLE.COM
    .example.com = EXAMPLE.COM
  6. 按照下例所示编辑 /etc/nsswitch.conf 配置文件。
    passwd: files winbind
    group: files winbind
    shadow: files winbind
    gshadow: files
  7. 确认主机名正确无误,且系统日期和时间已与 DNS 系统同步。
  8. 要通知 Horizon Agent 已使用 Samba 方法将 Linux 虚拟机加入域,请/etc/vmware/viewagent-custom.conf 文件中配置以下选项。将 YOURDOMAIN 替换为域的 NetBIOS 名称。
    OfflineJoinDomain=samba
    
    NetbiosDomain=YOURDOMAIN
  9. 重新启动最佳配置映像 Linux 虚拟机,然后重新登录。