要在 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
- SLED/SLES 15.x
- VMware 建议对运行以下 Linux 分发包的桌面使用 Samba 方法。
- Ubuntu 18.04
- Debian 10.x
- RHEL/CentOS 7.9
以下面的过程为例,使用 Samba 对即时克隆的 Linux 虚拟机执行脱机域加入,以将其加入到 Active Directory (AD)。此过程提供了适用于 Ubuntu 系统的步骤。
过程
- 在最佳配置映像 Linux 虚拟机上,安装 winbind 和 samba 软件包。
sudo apt install samba krb5-config krb5-user winbind libpam-winbind libnss-winbind
如果需要,请安装任何依赖库,例如
smbfs 和
smbclient。
- 使用以下命令安装 Samba tdb-tools 软件包。
sudo apt install tdb-tools
- 安装适用于 Linux 的 Horizon Agent。请参阅在 Linux 虚拟机上安装 Horizon Agent。
- 对 /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
- 编辑 /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
- 按照下例所示编辑 /etc/nsswitch.conf 配置文件。
passwd: files winbind
group: files winbind
shadow: files winbind
gshadow: files
- 确认主机名正确无误,且系统日期和时间已与 DNS 系统同步。
- 要通知 Horizon Agent 已使用 Samba 方法将 Linux 虚拟机加入域,请在 /etc/vmware/viewagent-custom.conf 文件中配置以下选项。将 YOURDOMAIN 替换为域的 NetBIOS 名称。
OfflineJoinDomain=samba
NetbiosDomain=YOURDOMAIN
- 重新启动最佳配置映像 Linux 虚拟机,然后重新登录。