Linux Virtual Delivery Agent

LDAPS

LDAPS は、LDAP 通信が TLS/SSL を使用して暗号化される 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 (Amazon Linux 2、RHEL、Rocky Linux、CentOS、SUSE の場合)、または /etc/ldap/ldap.conf (Debian および 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 site」を参照してください。

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