要在 RHEL/CentOS 7.x 虚拟机 (VM) 上启用 True SSO 功能,请安装 True SSO 功能所依赖的库、支持受信任的身份验证的根证书颁发机构 (CA) 证书以及 Horizon Agent。此外,您还必须编辑某些配置文件以完成身份验证设置。
可以使用以下过程在 RHEL 7.x 或 CentOS 7.x 虚拟机上启用 True SSO。
该过程中的一些示例使用占位符值以表示网络配置中的实体,例如,AD 域的 DNS 名称。请将占位符值替换为您的配置特定的信息,如下表中所述。
| 占位符值 | 描述 |
|---|---|
| dns_server | DNS 名称服务器的路径 |
| mydomain.com | AD 域的 DNS 名称 |
| MYDOMAIN.COM | AD 域的 DNS 名称,全部为大写字母 |
必备条件
-
为 Omnissa Access 和 Horizon Connection Server 配置 True SSO。
-
完成将 RHEL/CentOS 7.x 虚拟机与 Active Directory 集成以进行 True SSO 中介绍的步骤。
-
获取一个根证书颁发机构证书,并将其保存到 RHEL/CentOS 7.x 虚拟机上的
/tmp/certificate.cer中。请参阅如何导出根证书颁发机构证书。如果从属 CA 也是颁发机构,则需获取包含根 CA 证书和从属 CA 证书的完整证书链,并将其保存到虚拟机上的
/tmp/certificate.cer中。
步骤
-
安装 PKCS11 支持软件包组。
sudo yum install -y nss-tools nss-pam-ldapd pam_krb5 krb5-libs krb5-workstation krb5-pkinit -
安装根 CA 证书或证书链。
-
找到您下载的根 CA 证书或证书链,并将其传输到 PEM 文件。
sudo openssl x509 -inform der -in /tmp/certificate.cer -out /tmp/certificate.pem -
创建
/etc/pki/nssdb目录以包含系统数据库。sudo mkdir -p /etc/pki/nssdb -
使用
certutil命令将根 CA 证书或证书链安装到系统数据库/etc/pki/nssdb中。将以下示例命令中的“root CA cert”替换为系统数据库中根 CA 证书的名称。
sudo certutil -A -d /etc/pki/nssdb -n "root CA cert" -t "CT,C,C" -i /tmp/certificate.pem -
将根 CA 证书或证书链添加到 RHEL/CentOS 7.x 虚拟机上的受信任 CA 证书列表中,并使用
update-ca-trust命令更新系统范围的信任存储配置。sudo cp /tmp/certificate.pem /etc/pki/ca-trust/source/anchors/ca_cert.pem sudo update-ca-trust
-
-
在系统的 SSSD 配置文件中修改您的域的相应部分,如以下示例中所示。
[domain/mydomain.com] ad_domain = mydomain.com krb5_realm = MYDOMAIN.COM realmd_tags = manages-system joined-with-samba cache_credentials = True id_provider = ad krb5_store_password_if_offline = True default_shell = /bin/bash ldap_id_mapping = True #set the next line to false, so you can use the short name instead of the full domain name. use_fully_qualified_names = False fallback_homedir = /home/%u@%d access_provider = ad -
修改 Kerberos 配置文件
/etc/krb5.conf,如以下示例中所示。[libdefaults] dns_lookup_realm = false ticket_lifetime = 24h renew_lifetime = 7d forwardable = true rdns = false default_ccache_name = KEYRING:persistent:%{uid} # Add following line, if the system doesn't add it automatically default_realm = MYDOMAIN.COM [realms] MYDOMAIN.COM = { kdc = dns_server admin_server = dns_server # Add the following three lines for pkinit_* pkinit_anchors = DIR:/etc/pki/ca-trust/source/anchors pkinit_kdc_hostname = your_org_DNS_server pkinit_eku_checking = kpServerAuth } [domain_realm] mydomain.com = MYDOMAIN.COM .mydomain.com = MYDOMAIN.COM**注意:**您还必须在
/etc/krb5.conf中将模式设置为644。否则,True SSO 功能可能无法正常使用。 -
安装 Horizon Agent 软件包并启用 True SSO。
sudo ./install_viewagent.sh -T yes -
将以下参数添加到 Horizon Agent 自定义配置文件
viewagent-custom.conf中。使用以下示例,其中,NETBIOS_NAME_OF_DOMAIN 是您的组织的域的 NetBIOS 名称。NetbiosDomain=NETBIOS_NAME_OF_DOMAIN -
重新启动虚拟机,然后重新登录。
此页面对您有帮助吗?