Linux Virtual Delivery Agent 2112

LDAPSの構成

セキュリティで保護されたLDAP(LDAPS)によって、Active Directory管理対象ドメインにSSL(Secure Socket Layer)/TLS(Transport Layer Security)経由のセキュリティ保護されたLightweight Directory Access Protocolの通信を提供できます。

デフォルトで、クライアントとサーバーアプリケーション間のLDAP通信は暗号化されていません。SSL/TLSを使用した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のどちらかから適切な形式の証明書をインストールして、SSL経由のLDAP(LDAPS)を有効にできます。

ヒント:

SSL/TLS経由のLDAP(LDAPS)は、ドメインコントローラーで会社のルートCAをインストールすると、自動的に有効になります。

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

証明機関の階層に複数の層(2層または3層)がある場合、ドメインコントローラーでLDAPS認証の適切な証明書を自動的に取得できません。

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

クライアントで使用するルート証明書(CA)の有効化

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

ルートCAをエクスポートする方法について詳しくは、Microsoft Support 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を有効にしてもPython 3仮想環境が正常に作成されない場合は、「Python 3仮想環境の作成」の手順に従って手動で作成してください。

    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を構成する方法について説明します。

ヒント:

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

SSSD

オプションごとに、ポート636またはポート389のセキュリティで保護されたSSSD LDAPトラフィックを構成します。詳しくは、SSSD LDAP Linuxのmanページを参照してください。

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

また、セキュリティで保護されたLDAPは、SASL GSSAPI(署名およびシール)で構成されますが、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認証サービスはポート636のLDAPSをサポートしませんが、別の方法でポート389のセキュリティで保護された暗号化を提供します。

トラブルシューティング

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

  • LDAPSサービスの可用性

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

  • LDAPSを有効にするとLinux VDAの登録が失敗する

    LDAPサーバーとポートが正しく構成されていることを確認します。最初にルートCA証明書をチェックして、AD/LDAPサーバーと一致することを確認します。

  • 誤ったレジストリ変更

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

  • LDAPトラフィックは、Wiresharkやその他のネットワーク監視ツールからSSL/TLSで暗号化されません

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

  • Wiresharkやその他のネットワーク監視ツールからのLDAPSトラフィックが存在しない

    LDAP/LDAPSトラフィックは、Linux VDAの登録やグループポリシーの評価を行う際に発生します。

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

    IPアドレスの代わりに、AD FQDNを使用します。

  • /opt/Citrix/VDA/sbin/enable_ldaps.shスクリプトを実行してルートCA証明書をインポートできない

    CA証明書のフルパスを指定して、ルートCA証明書の種類が正しいことを確認します。サポートされているJava Keytoolの種類の大半で対応しています。サポート一覧にない場合は、最初に種類を変更してください。証明書の形式の問題が発生した場合は、Base64で暗号化されたPEM形式の使用をお勧めします。

  • ルートCA証明書をKeytool一覧に表示できない

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

LDAPSの構成