Skip to main content

2026 年 4 月 16 日

為 RHEL 和 Rocky Linux 9.x/8.x 桌面平台設定 True SSO

若要在 RHEL 或 Rocky Linux 9.x/8.x 桌面平台上支援 True SSO,您必須先將基礎虛擬機器 (VM) 與 Active Directory (AD) 網域整合。接著,您必須修改系統上的特定組態以支援 True SSO 功能。

此程序中的某些範例使用預留位置值來代表您網路組態中的實體,例如 AD 網域的 DNS 名稱。請將預留位置值取代為您的組態特有的資訊,如下表所說明。

預留位置值說明
mydomain.comAD 網域的 DNS 名稱
MYDOMAIN.COMAD 網域的 DNS 名稱 (全部使用大寫字母)
MYDOMAINNetBIOS 網域的名稱
dnsserver.mydomain.comDNS 伺服器的名稱

先決條件

  • 為 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.crtrui.key 通常位於 etc 結構中的 ssl 目錄內。

程序

  1. 在基礎虛擬機器上,確認與 Active Directory 的網路連線。

    sudo realm discover *mydomain.com*
    
  2. 安裝所需的相依性套件。

    sudo yum install oddjob oddjob-mkhomedir sssd adcli samba-common-tools krb5-pkinit
    
  3. 加入 AD 網域。

    sudo realm join --verbose *mydomain.com* -U administrator
    
  4. 安裝根 CA 憑證或憑證鏈結。

    1. 找出您所下載的根 CA 憑證或憑證鏈結,並將其傳輸至 PEM 檔案。

      sudo openssl x509 -inform der -in /tmp/certificate.cer -out /tmp/certificate.pem
          
      
    2. 將憑證複製到 /etc/sssd/pki/sssd_auth_ca_db.pem 檔案。

      sudo cp /tmp/certificate.pem /etc/sssd/pki/sssd_auth_ca_db.pem
      
  5. 修改 /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
    
  6. /etc/krb5.conf 組態檔的模式設定為 644

    **附註:**如果未依規定修改 /etc/krb5.conf,True SSO 功能可能無法正常運作。

  7. 執行命令以明確允許 SHA-1 密碼編譯原則。

    sudo update-crypto-policies --set DEFAULT:SHA1
    
  8. (RHEL 或 Rocky Linux 9.x) 為了確保 TrueSSO 在即時複製桌面平台集區中正常運作,請修改以下組態。

    **附註:**如果您未將該虛擬機器用於即時複製桌面平台集區,則可以略過這些組態。

  9. 找到先前下載的根 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. 重新啟動虛擬機器,並重新登入。

此頁面對您有幫助嗎?

針對本主題提供意見回饋

本主題對您有幫助嗎?

請勿填寫任何個人或機密資訊。

正在產生連結…