Ubuntu/Debian デスクトップで SSSD を使用した True SSO を有効にするには、SSSD ソリューションを使用して、ベース仮想マシン (VM) と Active Directory (AD) ドメインを統合します。次に、Horizon Agent をインストールする前に、信頼された認証をサポートするためにルート認証局 (CA) 証明書をインストールします。
**注:**Horizon 8 のアップグレード後も既存の True SSO 構成が引き続き機能するようにするには、/etc/sssd/sssd.conf の変更が必要になる場合があります。詳細については、「Omnissa Horizon 8 2412 以降へのアップグレード」を参照してください。
説明の中で、仮想マシンのホスト名などのネットワーク構成のエンティティをプレースホルダーで表している部分があります。次の表を参考にして、これらのプレースホルダーの値をご使用の環境に合わせて変更してください。
| プレースホルダーの値 | 説明 |
|---|---|
| dns_IP_ADDRESS | DNS ネーム サーバの IP アドレス |
| mydomain.com | Active Directory ドメインの DNS 名 |
| MYDOMAIN.COM | Active Directory ドメインの DNS 名。すべて大文字にします。 |
| myhost | Ubuntu/Debian 仮想マシンのホスト名 |
| MYDOMAIN | ワークグループの DNS 名または Samba サーバが含まれている NT ドメインの DNS 名。すべて大文字にします。 |
| ads-hostname | Active Directory サーバのホスト名 |
| admin-user | Active Directory ドメインの管理者のユーザー名 |
前提条件
-
仮想マシンで次のいずれかのディストリビューションが実行されていることを確認します。
- Ubuntu
- Debian
-
Omnissa Access と Horizon Connection Server 用に True SSO を構成します。
-
ルート CA 証明書を取得して、Ubuntu/Debian 仮想マシンの
/tmp/certificate.cerに保存します。「ルート CA 証明書をエクスポートする方法」を参照してください。下位認証局 (CA) も発行機関の場合は、ルートおよび下位 CA 証明書のチェーン全体を取得し、仮想マシンの
/tmp/certificate.cerに保存します。
手順
-
ベース仮想マシンで、Active Directory とのネットワーク接続を確認します。
sudo apt install -y realmd sudo realm discover mydomain.com -
必要な依存パッケージをインストールします。
sudo apt-get install sssd-tools sssd libnss-sss libpam-sss libpam-pkcs11 adcli samba-common-bin krb5-user krb5-pkinit -
Active Directory ドメインに参加します。
sudo realm join --verbose mydomain.com -U admin-user -
ルート 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構成ファイルを変更します。注:
use_fully_qualified_names = Falseは、ユーザーに短縮名を使用することを意味しますSSO 用に
ad_gpo_map_interactive = +gdm-hzncred行を追加しますUbuntu 20.04 および Debian 12 の場合のみ、
ad_gpo_access_control = permissiveを追加して、https://bugs.launchpad.net/ubuntu/+source/sssd/+bug/1934997 を修正します。証明書ログインを行うには、以下の
[pam]コード行を追加します。pam_cert_auth行でシステムの証明書ログインを有効にします。pam_p11_allowed_services行で Horizon Agent の証明書ログインを有効にします。[cert]コード行を追加して、証明書ユーザーの一致とマッピング ルールを設定します。[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 fallback_homedir = /home/%u@%d access_provider = ad ad_gpo_map_interactive = +gdm-hzncred ad_gpo_access_control = permissive [pam] pam_cert_auth = True pam_p11_allowed_services = +gdm-hzncred [certmap/mydomain.com/truesso] matchrule = <EKU>msScLogin maprule = (|(userPrincipal={subject_principal})(samAccountName={subject_principal.short_name})) domains = mydomain.com priority = 10 -
/etc/krb5.conf構成ファイルのアクセス モードを変更して、編集可能にします。sudo chmod 644 /etc/krb5.conf -
次の例のように、
/etc/krb5.confファイルを変更します。kdc and pkinit_kdc_hostname specify Kerberos Key Distribution Center This can be found in output of "dig +short _kerberos._tcp.MYDOMAIN.COM SRV" or "nslookup -type=SRV _kerberos._tcp.dc._msdcs.mydomain.com"[realms]セクションに次のPKINTパラメータを指定します。pkinit_anchors specifies the directory containing trusted CA certificates for PKINIT pkinit_kdc_hostname: Hostname of the KDC for PKINIT pkinit_eku_checking: Controls Extended Key Usage checking (example, kpServerAuth)次の例では、
[realms]セクションにPKINTパラメータを指定しています。[realms] http://MYDOMAIN.COM = { kdc = http://dnsserver.mydomain.com admin_server = http://dnsserver.mydomain.com pkinit_anchors = FILE:/etc/sssd/pki/sssd_auth_ca_db.pem pkinit_kdc_hostname = http://dnsserver.mydomain.com pkinit_eku_checking = kpServerAuth } -
Horizon Agent パッケージをインストールして、True SSO を有効にします。
sudo ./install_viewagent.sh -T yes -
/etc/omnissa/viewagent-custom.conf構成ファイルに次の行を追加します。NetbiosDomain = MYDOMAIN -
仮想マシンを再起動してログインします。
このページは役に立ちましたか?