若要在 SLED/SLES 虛擬機器 (VM) 上啟用 True SSO 功能,請安裝 True SSO 功能所依賴的程式庫、支援受信任驗證所需的根憑證授權機構 (CA) 憑證,以及 Horizon Agent。此外,您還必須編輯某些組態檔以完成驗證設定。

請使用下列程序,在 SLED 或 SLES 虛擬機器上啟用 True SSO。

必要條件

程序

  1. 執行以下命令,以安裝所需的套件。
    sudo zypper install mozilla-nss-tools pam_krb5 krb5-client krb5-plugin-preauth-pkinit
  2. 安裝根 CA 憑證或憑證鏈結。
    1. 找出您所下載的根 CA 憑證或憑證鏈結,並將其傳輸至 PEM 檔案。
      sudo openssl x509 -inform der -in /tmp/certificate.cer -out /tmp/certificate.pem
    2. 建立 /etc/pki/nssdb 目錄以包含系統資料庫。
      sudo mkdir -p /etc/pki/nssdb
    3. 使用 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
      
    4. 將根 CA 憑證新增至 pam_pkcs11
      sudo cp /tmp/certificate.pem /etc/pki/ca-trust/source/anchors/ca_cert.pem
  3. 編輯 /etc/krb5.conf 組態檔,使其具有類似下列範例的內容。
    [libdefaults]
          default_realm = MYDOMAIN.COM
          dns_lookup_realm = false
          ticket_lifetime = 24h
          renew_lifetime = 7d
          forwardable = true
          rdns = false
          default_ccache_name = KEYRING:persistent:%{uid}
    
    [realms]
          MYDOMAIN.COM = {
                kdc = ads-hostname
                admin_server = ads-hostname 
                pkinit_anchors = DIR:/etc/pki/ca-trust/source/anchors
                pkinit_kdc_hostname = ADS-HOSTNAME
                pkinit_eku_checking = kpServerAuth
          }
    
    [domain_realm]
          .mydomain.com = MYDOMAIN.COM
          mydomain.com = MYDOMAIN.COM
    
    備註: 您還必須將 /etc/krb5.conf 的檔案權限設定為 644。否則,True SSO 功能可能無法正常運作。
    請將範例中的預留位置值取代為您的網路組態特有的資訊,如下表所說明。
    預留位置值 說明
    mydomain.com AD 網域的 DNS 名稱
    MYDOMAIN.COM AD 網域的 DNS 名稱 (全部使用大寫字母)
    ads-hostname AD 伺服器的主機名稱
    ADS-HOSTNAME AD 伺服器的主機名稱 (全部使用大寫字母)
  4. 安裝 Horizon Agent 套件,並啟用 True SSO。
    sudo ./install_viewagent.sh -T yes
  5. 將下列參數新增至 Horizon Agent 自訂組態檔 /etc/vmware/viewagent-custom.conf。請使用下列語法,其中 NETBIOS_NAME_OF_DOMAIN 是您組織的 NetBIOS 網域名稱。
    NetbiosDomain=NETBIOS_NAME_OF_DOMAIN
    備註: 請一律使用 NetBIOS 網域的完整名稱,例如 LXD.VDI。如果您使用簡短名稱,例如 LXD,則 True SSO 功能將無法正常運作。
  6. 重新啟動虛擬機器,並重新登入。