Linux Virtual Delivery Agent

Azure Active Directoryを使用した認証

注:

この機能は、AzureでホストされるVDAでのみ使用できます。

ニーズに基づいて、Azureに2種類のLinux VDAを展開できます:

  • Azure AD DS参加済みVM。 VMが、Azure Active Directory(AAD)ドメインサービス(DS)の管理対象ドメインに参加しています。 ユーザーはドメイン資格情報を使用してVMにログオンします。
  • ドメイン非参加VM。 VMが、AAD IDサービスと統合されており、ユーザー認証を提供します。 ユーザーはAAD資格情報を使用してVMにログオンします。

AAD DSおよびAADについて詳しくは、こちらのMicrosoft社の記事を参照してください。

この記事では、ドメイン非参加VDAでAAD IDサービスを有効化および構成する方法について説明します。

サポートされているディストリビューション

  • Ubuntu 20.04、18.04
  • RHEL 8.4、7.9
  • SUSE 15.x
  • Debian 10

詳しくは、Microsoft社の記事を参照してください。

既知の問題と回避策

Red Hat 8.3および7.9では、AADユーザー認証後に、PAM(Pluggable Authentication Module:プラグイン可能な認証モジュール)のpam_loginuid.sologinuidの設定に失敗します。 この問題により、AADユーザーはVDAセッションにアクセスできなくなります。

この問題を回避するには、/etc/pam.d/remoteで、Session required pam_loginuid.so行をコメントアウトします。 例として以下のスクリーンショットを参照してください。

既知の問題の回避策

手順1:Azure Portalでテンプレート仮想マシンを作成する

テンプレート仮想マシンを作成し、Azure CLIをVMにインストールします。

  1. Azure Portalでテンプレート仮想マシンを作成します。 [Review + create] をクリックする前に、[Management] タブで [Login with Azure AD] を選択してください。

    AADでのログインを有効にする設定

  2. テンプレート仮想マシンでAzure CLIをVMにインストールします。 詳しくは、Microsoft社の記事を参照してください。

手順2:テンプレート仮想マシンでマスターイメージを準備

マスターイメージを準備するには、「AzureでのMCSを使用したLinux仮想マシンの作成」の「手順3:マスターイメージを準備する」の手順に従ってください。

手順3:テンプレート仮想マシンをドメイン非参加モードに設定する

マスターイメージを作成したら、次の手順に従ってVMをドメイン非参加モードに設定します:

  1. コマンドプロンプトから次のスクリプトを実行します。

      Modify /var/xdl/mcs/mcs_util.sh
    <!--NeedCopy-->
    
  2. 関数read_non_domain_joined_info()を見つけて、NonDomainJoinedの値を2に変更します。 例として、次のコードブロックを参照してください。

      function read_non_domain_joined_info()
      {
      log "Debug: Enter read_non_domain_joined_info"
      # check if websocket enabled
      TrustIdentity=`cat ${id_disk_mnt_point}${ad_info_file_path} | grep '\[TrustIdentity\]' | sed 's/\s//g'`
      if [ "$TrustIdentity" == "[TrustIdentity]" ]; then
      NonDomainJoined=2
      fi
      ...
      }
    <!--NeedCopy-->
    
  3. 変更を保存します。

  4. テンプレート仮想マシンをシャットダウンします。

手順4:テンプレート仮想マシンからLinux VMを作成する

ドメイン非参加テンプレート仮想マシンの準備ができたら、次の手順に従ってVMを作成します:

  1. Citrix Cloudにサインインします。

  2. Citrix DaaSをダブルクリックして、[完全な構成]管理コンソールにアクセスします。

  3. [マシンカタログ] で、Machine Creation Servicesを使用してテンプレート仮想マシンからLinux VMを作成することを選択します。 詳しくは、Citrix DaaSの記事「ドメイン非参加」を参照してください。

手順5:Linux VMにAADユーザーアカウントを割り当てる

ドメイン非参加VMを作成したら、それらにAADユーザーアカウントを割り当てます。

AADユーザーアカウントをVMに割り当てるには、次の手順に従います:

  1. 管理者アカウントを使用してVMにアクセスします。
  2. [Identify]>[System assigned]タブで、[System Identity]を有効にします。

    AADでのログインを有効にする設定

  3. [Access control (IAM)]>[Role assignments]タブで、[Virtual Machine User Login]の欄を見つけ、必要に応じてAADユーザーアカウントを追加します。

    AADでのログインを有効にする設定

ドメイン非参加VDAへのログオン

組織内のエンドユーザーは、ドメイン非参加VDAに2つの方法でログオンできます。 詳細な手順は次のとおりです:

  1. Workspaceアプリを起動し、AADユーザー名とパスワードを入力してワークスペースにログオンします。 [Workspace]ページが開きます。
  2. ドメイン非参加デスクトップをダブルクリックします。 [AAD LOGIN]ページが表示されます。

    このページは、VDAで設定されているログインモード(デバイスコードまたはAADアカウント/パスワード)によって異なります。 デフォルトでは、Linux VDAは、次のようにデバイスコードログインモードを使用してAADユーザーを認証します。 管理者は、必要に応じて、ログインモードをAADアカウント/パスワードに変更できます。 手順について詳しくは、以降のセクションを参照してください。

    AADでのログインを有効にする設定

  3. 画面の指示に基づいて、次のいずれかの方法でデスクトップセッションにログオンします:
    • QRコードをスキャンして、コードを入力します。
    • AADユーザー名とパスワードを入力します。

AADアカウント/パスワードログインモードへの変更

デフォルトでは、Linux VDAはデバイスコードを使用してAADユーザーを認証します。 詳しくは、Microsoft社の記事を参照してください。 ログインモードを [AADアカウント/パスワード] に変更するには、次の手順を実行します:

VDAで次のコマンドを実行し、AADAcctPwdAuthEnableキーを見つけて、その値を0x00000001に変更します。

  /opt/Citrix/VDA/bin/ctxreg create -k "HKLM\System\CurrentControlSet\Services\CitrixBrokerAgent\WebSocket" -t "REG_DWORD" -v "AADAcctPwdAuthEnable" -d "0x00000001" --force

<!--NeedCopy-->

注:

この方法は、Microsoftアカウント、または2要素認証が有効になっているアカウントでは使えません。