Linux Virtual Delivery Agent

LDAPS の構成

LDAPS は、TLS/SSL を使用して LDAP 通信が暗号化される、Lightweight Directory Access Protocol (LDAP) のセキュアバージョンです。

  • デフォルトでは、クライアントアプリケーションとサーバーアプリケーション間の LDAP 通信は暗号化されません。LDAPS を使用すると、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 から適切にフォーマットされた証明書をインストールすることで、LDAP over SSL (LDAPS) を有効にできます。

ヒント:

ドメインコントローラーにエンタープライズルート CA をインストールすると、LDAPS は自動的に有効になります。

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

多層認証機関階層を使用している場合、ドメインコントローラー上の LDAPS 認証に適した証明書が自動的に提供されるわけではありません。

多層認証機関階層を使用してドメインコントローラーの LDAPS を有効にする方法については、「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 を有効または無効にするには、enable_ldaps.sh スクリプトを (管理者としてログインして) 実行します。enable_ldaps.sh スクリプトを非対話モードで実行するには、次の変数を環境にエクスポートします。

#CTX_LDAPS_KEYSTORE_PASSWORD=

#CTX_LDAPS_LDAP_SERVERS=
<!--NeedCopy-->
  • 提供されたルート CA 証明書を使用して LDAP over SSL/TLS を有効にするには (LDAP チャネルバインディングをサポート):

     /opt/Citrix/VDA/sbin/enable_ldaps.sh -Enable pathToRootCA
     <!--NeedCopy-->
    
  • 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 の LDAP over SSL) はポート 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 の構成