Linux Virtual Delivery Agent 2112

LDAPSの構成

セキュアLDAP (LDAPS) を使用すると、Active Directory管理対象ドメインでセキュアな軽量ディレクトリアクセスプロトコルを有効にし、SSL (Secure Socket Layer)/TLS (Transport Layer Security) を介した通信を提供できます。

  • デフォルトでは、クライアントとサーバーアプリケーション間のLDAP通信は暗号化されません。SSL/TLS (LDAPS) を使用するLDAPにより、Linux VDAとLDAPサーバー間のLDAPクエリコンテンツを保護できます。

以下のLinux VDAコンポーネントはLDAPSに依存しています。

  • ブローカーエージェント: Delivery Controller™へのLinux VDA登録
  • ポリシーサービス: ポリシー評価

  • LDAPSの構成には以下が含まれます。

  • Active Directory (AD)/LDAPサーバーでのLDAPSの有効化
  • クライアント使用のためのルートCAのエクスポート
  • Linux VDAでのLDAPSの有効化/無効化
  • サードパーティプラットフォームでのLDAPSの構成
  • SSSDの構成
  • Winbindの構成
  • Centrifyの構成
  • Questの構成

注:

LDAPサーバーの監視サイクルを設定するには、次のコマンドを実行します。デフォルト値は15分です。少なくとも10分に設定してください。

/opt/Citrix/VDA/bin/ctxreg create -k "HKLM\Software\Citrix\VirtualDesktopAgent" -v "ListOfLDAPServersMonitorPeroid" -t "REG_DWORD" -d "0x0000000f" --force
<!--NeedCopy-->

AD/LDAPサーバーでのLDAPSの有効化

Microsoft証明機関 (CA) またはMicrosoft以外のCAのいずれかから適切にフォーマットされた証明書をインストールすることで、SSL経由のLDAP (LDAPS) を有効にできます。

ヒント:

  • ドメインコントローラーにエンタープライズルートCAをインストールすると、SSL/TLS経由のLDAP (LDAPS) が自動的に有効になります。

証明書のインストール方法とLDAPS接続の確認方法について詳しくは、Microsoftサポートサイトの「How to enable LDAP over SSL with a third-party certification authority」を参照してください。

  • マルチティア (2層または3層など) の証明機関階層を使用している場合、ドメインコントローラー上のLDAPS認証に適した証明書が自動的に提供されるわけではありません。

マルチティア証明機関階層を使用してドメインコントローラーでLDAPSを有効にする方法については、Microsoft TechNetサイトの「LDAP over SSL (LDAPS) Certificate」を参照してください。

クライアント使用のためのルート証明機関の有効化

クライアントは、LDAPサーバーが信頼するCAからの証明書を使用する必要があります。クライアントのLDAPS認証を有効にするには、ルートCA証明書を信頼されたキーストアにインポートします。

ルートCAのエクスポート方法について詳しくは、MicrosoftサポートWebサイトの「How to export Root Certification Authority Certificate」を参照してください。

Linux VDAでのLDAPSの有効化または無効化

Linux VDAでLDAPSを有効または無効にするには、次のスクリプトを (管理者としてログオンして) 実行します。

このコマンドの構文には、以下が含まれます。

  • 提供されたルートCA証明書を使用してSSL/TLS経由のLDAPを有効にする。

     /opt/Citrix/VDA/sbin/enable_ldaps.sh -Enable pathToRootCA
     <!--NeedCopy-->
    
  • チャネルバインディングを使用してSSL/TLS経由のLDAPを有効にする。

     /opt/Citrix/VDA/sbin/enable_ldaps.sh -Enablecb pathToRootCA
     <!--NeedCopy-->
    

    注:

    チャネルバインディング用のルートCA証明書はPEM形式である必要があります。LDAPSを有効にしてもPython3仮想環境が正常に作成されない場合は、「Python3仮想環境の作成」の手順に従って手動で作成してください。

    pipツールを使用する際に発生する可能性のあるSSL接続エラーに対処するには、次の信頼済みホストを/etc/pip.confファイルに追加することを検討してください。 [global]

  • trusted-host = pypi.org files.pythonhosted.org

  • SSL/TLSなしのLDAPにフォールバックする。
/opt/Citrix/VDA/sbin/enable_ldaps.sh -Disable
<!--NeedCopy-->

LDAPS専用のJavaキーストアは /etc/xdl/.keystore にあります。影響を受けるレジストリキーは次のとおりです。

HKLM\Software\Citrix\VirtualDesktopAgent\ListOfLDAPServers

HKLM\Software\Citrix\VirtualDesktopAgent\ListOfLDAPServersForPolicy

HKLM\Software\Citrix\VirtualDesktopAgent\UseLDAPS

HKLM\Software\Policies\Citrix\VirtualDesktopAgent\Keystore

HKLM\Software\Citrix\VirtualDesktopAgent\EnableChannelBinding
<!--NeedCopy-->
  • サードパーティプラットフォームでのLDAPSの構成

  • Linux VDAコンポーネントの他に、VDAに準拠するいくつかのサードパーティ製ソフトウェアコンポーネント (SSSD、Winbind、Centrify、Questなど) もセキュアLDAPを必要とする場合があります。以下のセクションでは、LDAPS、STARTTLS、またはSASLサインアンドシールを使用してセキュアLDAPを構成する方法について説明します。

  • ヒント:

  • これらのソフトウェアコンポーネントのすべてが、セキュアLDAPを確保するためにSSLポート636を使用することを推奨しているわけではありません。また、ほとんどの場合、LDAPS (ポート636のSSL経由LDAP) はポート389のSTARTTLSと共存できません。

SSSD

オプションに従って、ポート636またはポート389でSSSDセキュアLDAPトラフィックを構成します。詳しくは、「SSSD LDAP Linux man page」を参照してください。

Winbind

Winbind LDAPクエリはADSメソッドを使用します。Winbindはポート389のStartTLSメソッドのみをサポートします。影響を受ける構成ファイルは /etc/samba/smb.conf および /etc/openldap/ldap.conf (RHELの場合) または /etc/ldap/ldap.conf (Ubuntuの場合) です。ファイルを次のように変更します。

  • smb.conf

    ldap ssl = start tls ldap ssl ads = yes client ldap sasl wrapping = plain

  • ldap.conf

    TLS_REQCERT never

あるいは、SASL GSSAPIサインアンドシールによってセキュアLDAPを構成することもできますが、これはTLS/SSLと共存できません。SASL暗号化を使用するには、smb.conf の構成を次のように変更します。

ldap ssl = off ldap ssl ads = no client ldap sasl wrapping = seal

Centrify

Centrifyはポート636でのLDAPSをサポートしていません。ただし、ポート389でセキュアな暗号化を提供します。詳しくは、Centrifyサイト を参照してください。

Quest

Quest Authentication Serviceはポート636でのLDAPSをサポートしていませんが、異なる方法を使用してポート389でセキュアな暗号化を提供します。

トラブルシューティング

この機能を使用すると、次の問題が発生する可能性があります。

  • LDAPSサービスの可用性

    AD/LDAPサーバーでLDAPS接続が利用可能であることを確認します。ポートはデフォルトで636です。

  • LDAPSが有効な場合のLinux VDA登録の失敗

    LDAPサーバーとポートが正しく構成されていることを確認します。まずルートCA証明書を確認し、AD/LDAPサーバーと一致していることを確認してください。

  • 誤ったレジストリ変更

    enable_ldaps.sh を使用せずにLDAPS関連のキーが誤って更新された場合、LDAPSコンポーネントの依存関係が損なわれる可能性があります。

  • Wiresharkまたはその他のネットワーク監視ツールからのSSL/TLSによるLDAPトラフィックの暗号化の失敗

    デフォルトではLDAPSは無効になっています。強制的に有効にするには、/opt/Citrix/VDA/sbin/enable_ldaps.sh を実行します。

  • Wiresharkまたはその他のネットワーク監視ツールからのLDAPSトラフィックがない

    LDAP/LDAPSトラフィックは、Linux VDAの登録とグループポリシーの評価が行われるときに発生します。

  • ADサーバーでldp connectを実行してLDAPSの可用性を確認できない

    IPアドレスの代わりにADのFQDNを使用してください。

  • /opt/Citrix/VDA/sbin/enable_ldaps.shスクリプトの実行によるルートCA証明書のインポートの失敗

    CA証明書の完全なパスを指定し、ルートCA証明書が正しいタイプであることを確認します。これは、サポートされているほとんどのJava Keytoolタイプと互換性があるはずです。サポートリストにない場合は、まずタイプを変換できます。証明書形式の問題が発生した場合は、base64エンコードされたPEM形式を推奨します。

  • Keytool -listでルートCA証明書を表示できない

    /opt/Citrix/VDA/sbin/enable_ldaps.sh を実行してLDAPSを有効にすると、証明書は/etc/xdl/.keystoreにインポートされ、キーストアを保護するためのパスワードが設定されます。パスワードを忘れた場合は、スクリプトを再実行してキーストアを作成できます。

LDAPSの構成