若要在 RHEL 或 Rocky Linux 9.x/8.x 桌面平台上支援 True SSO,您必須先將基礎虛擬機器 (VM) 與 Active Directory (AD) 網域整合。接著,您必須修改系統上的特定組態以支援 True SSO 功能。
此程序中的某些範例使用預留位置值來代表您網路組態中的實體,例如 AD 網域的 DNS 名稱。請將預留位置值取代為您的組態特有的資訊,如下表所說明。
| 預留位置值 | 說明 |
|---|---|
| mydomain.com | AD 網域的 DNS 名稱 |
| MYDOMAIN.COM | AD 網域的 DNS 名稱 (全部使用大寫字母) |
| MYDOMAIN | NetBIOS 網域的名稱 |
| dnsserver.mydomain.com | DNS 伺服器的名稱 |
先決條件
-
為 Omnissa Access 和 Horizon Connection Server 設定 True SSO。
-
確認 Active Directory (AD) 伺服器在基礎虛擬機器上可由 DNS 解析。
-
設定虛擬機器的主機名稱。
-
設定虛擬機器上的網路時間通訊協定 (NTP)。
-
取得根憑證授權機構 (CA) 憑證,並將其儲存到虛擬機器上的
/tmp/certificate.cer。請參閱如何匯出根憑證授權機構憑證。如果子憑證授權機構 (CA) 也是核發授權機構,則需取得根 CA 和子 CA 的完整憑證鏈結,並將其儲存到虛擬機器上的
/tmp/certificate.cer。 -
若要在 FIPS 模式下使用 True SSO,請確保您已完成設定符合 FIPS 規範的 Linux 機器中的所有步驟。您必須將 BlastServer 的受信任 CA 憑證新增至
ssl目錄中的rui.crt,並將與rui.crt配對的金鑰新增至rui.key。
rui.crt 和 rui.key 通常位於 etc 結構中的 ssl 目錄內。
程序
-
在基礎虛擬機器上,確認與 Active Directory 的網路連線。
sudo realm discover *mydomain.com* -
安裝所需的相依性套件。
sudo yum install oddjob oddjob-mkhomedir sssd adcli samba-common-tools krb5-pkinit -
加入 AD 網域。
sudo realm join --verbose *mydomain.com* -U administrator -
安裝根 CA 憑證或憑證鏈結。
-
找出您所下載的根 CA 憑證或憑證鏈結,並將其傳輸至 PEM 檔案。
sudo openssl x509 -inform der -in /tmp/certificate.cer -out /tmp/certificate.pem -
將憑證複製到
/etc/sssd/pki/sssd_auth_ca_db.pem檔案。sudo cp /tmp/certificate.pem /etc/sssd/pki/sssd_auth_ca_db.pem
-
-
修改
/etc/sssd/sssd.conf組態檔,如下列範例所示。[sssd] domains = *mydomain.com* config_file_version = 2 services = nss, pam [domain/mydomain.com] ad_domain = *mydomain.com* krb5_realm = *MYDOMAIN.COM* realmd_tags = manages-system joined-with-adcli cache_credentials = True id_provider = ad krb5_store_password_if_offline = True default_shell = /bin/bash ldap_id_mapping = True use_fully_qualified_names = False #Use short name for user fallback_homedir = /home/%u@%d access_provider = ad ad_gpo_map_interactive #For SSO, you can add this line for ad_gpo_map_interactive and set equal to a +gdm value. You must obtain from Omnissa Support the appropriate value for your specific Horizon version [pam] #Add pam section for certificate logon pam_cert_auth = True #Add this line to enable certificate logon for system pam_p11_allowed_services #To enable certificate logon for Horizon Agent, you can add this line for pam_p11_allowed_services and set equal to a +gdm value. You must obtain from Omnissa Support the appropriate value for your specific Horizon version [certmap/*mydomain.com*/truesso] #Add this section and following lines to set match and map rule for certificate user matchrule = <EKU>msScLogin maprule = (|(userPrincipal={subject_principal})(samAccountName={subject_principal.short_name})) domains = *mydomain.com* priority = 10 -
將
/etc/krb5.conf組態檔的模式設定為644。**附註:**如果未依規定修改
/etc/krb5.conf,True SSO 功能可能無法正常運作。 -
執行命令以明確允許 SHA-1 密碼編譯原則。
sudo update-crypto-policies --set DEFAULT:SHA1 -
(RHEL 或 Rocky Linux 9.x) 為了確保 TrueSSO 在即時複製桌面平台集區中正常運作,請修改以下組態。
**附註:**如果您未將該虛擬機器用於即時複製桌面平台集區,則可以略過這些組態。
-
找到先前下載的根 CA 憑證或憑證鏈結,並將其複製到
/etc/pki/ca-trust/source/anchors/ca_cert.pem。然後,使用update-ca-trust命令,讓舊版應用程式能夠讀取受信任的憑證。
```
sudo cp /tmp/certificate.pem /etc/pki/ca-trust/source/anchors/ca_cert.pem
sudo update-ca-trust
```
2. 修改 `/etc/krb5.conf` 檔案,如下列範例所示。
```
[realms]
MYDOMAIN.COM = {
kdc = dnsserver.mydomain.com
admin_server = dnsserver.mydomain.com
pkinit_anchors = DIR:/etc/pki/ca-trust/source/anchors
pkinit_kdc_hostname = dnsserver.mydomain.com
pkinit_eku_checking = kpServerAuth
}
[domain_realm]
.mydomain.com = MYDOMAIN.COM
mydomain.com = MYDOMAIN.COM
```
9. 安裝啟用 True SSO 的 Horizon Agent 套件。
```
sudo ./install_viewagent.sh -T yes
```
10. 修改 viewagent-custom.conf 組態檔,並加入下列一行。
```
NetbiosDomain = *MYDOMAIN*
```
11. 重新啟動虛擬機器,並重新登入。
此頁面對您有幫助嗎?