Skip to main content

2026 年 5 月 8 日

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

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

**附註:**為確保現有的 True SSO 組態在 Horizon 8 升級後能持續運作,您可能需要修改 /etc/sssd/sssd.conf。如需詳細資訊,請參閱升級至 Omnissa Horizon 8 版本 2412 及更新版本

此程序中的某些範例使用預留位置值來代表您網路組態中的實體,例如 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 憑證新增至 /etc/omnissa/ssl/rui.crt,並將與 rui.crt 配對的金鑰新增至 /etc/omnissa/ssl/rui.key

程序

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

    sudo dnf install -y realmd
    sudo realm discover *mydomain.com*
    
  2. 安裝所需的相依性套件。

    sudo yum install oddjob oddjob-mkhomedir sssd sssd-tools 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 = +gdm-hzncred         #Add this line for SSO
     
    [pam]                                         #Add pam section for certificate logon
    pam_cert_auth = True                          #Add this line to enable certificate logon for system
    pam_p11_allowed_services = +gdm-hzncred       #Add this line to enable certificate logon for Horizon Agent
     
    [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. (RHEL 或 Rocky Linux 9.x) 為了確保 TrueSSO 在即時複製桌面平台集區中正常運作,請修改以下組態。

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

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

      sudo update-crypto-policies --set DEFAULT:SHA1
      
    2. 找到先前下載的根 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
      
    3. 修改 /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
      
  8. 安裝啟用 True SSO 的 Horizon Agent 套件。

    sudo ./install_viewagent.sh -T yes
    
  9. 修改 /etc/omnissa/viewagent-custom.conf 組態檔,並加入下列一行。

    NetbiosDomain = *MYDOMAIN*
    
  10. 重新啟動虛擬機器,並重新登入。

此頁面對您有幫助嗎?

針對本主題提供意見回饋

本主題對您有幫助嗎?

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

正在產生連結…