フェデレーション認証サービス

最終公開日 : Nov 13, 2026
フェデレーション認証サービス (FAS) を使用して、Linux VDAにログオンするユーザーを認証できます。Linux VDAは、FASログオン機能のためにWindows VDAと同じWindows環境を使用します。FASのWindows環境の構成については、「フェデレーション認証サービス」(/ja-jp/federated-authentication-service.html)を参照してください。この記事では、Linux VDAに特化した追加情報を提供します。
注:
  • Linux VDAは、インセッション動作ポリシーをサポートしていません。
  • Linux VDAは、FASサーバーとデータを送信するために短い接続を使用します。

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

FASは、限られたLinuxディストリビューションとドメイン参加方法をサポートしています。次のマトリックスを参照してください。
ウィンバインド SSSD セントリファイ PBIS クエスト
デビアン 12.15/11.11 はい はい はい はい はい
RHEL 9.8/9.6/9.4 はい はい はい いいえ はい
RHEL 8.10 はい はい はい はい はい
ロッキーリナックス 9.8/9.6/9.4 はい はい はい いいえ はい
ロッキーリナックス 8.10 はい はい はい いいえ はい
SUSE 15.6 はい はい はい いいえ はい
ウブントゥ 24.04 はい はい はい いいえ はい
ウブントゥ 22.04 はい はい はい はい はい
注:
  1. ドメイン参加方法がQuestの場合、krb5.conf が存在しない可能性があります。そのようなシナリオでは、まず「krb5-pkinit」と「libpam-krb5」を手動でインストールしてください (これによりKerberos情報の入力を求められ、krb5.confに書き込まれます)。その後、fasスクリプト「/opt/Citrix/VDA/sbin/ctxfascfg.sh」を実行してください。
  2. rhel9 および rocky9 の場合、お客様は「AD-SUPPORT」暗号化ポリシーを有効にする必要があります (Kerberos認証中にADによって使用される場合、SHA1も必要になる場合があります)。コマンドは次のとおりです。
    update-crypto-policies --set DEFAULT:AD-SUPPORT
    update-crypto-policies --set DEFAULT:AD-SUPPORT:SHA1
  3. Debian 11 の場合、ユーザーはダイジェストメソッドを「SHA256」に手動で構成する必要がある場合があります。コマンドは次のとおりです。 /opt/Citrix/VDA/bin/ctxreg create -k "HKLM\Software\Citrix\VirtualDesktopAgent\Authentication\UserCredentialService" -t "REG_SZ" -v "DigestMethod" -d "SHA256" --force

Linux VDA 上でFASを構成する

証明書をインストールする

ユーザーの証明書を検証するために、ルートCA証明書とすべての中間証明書をVDAにインストールします。たとえば、ルートCA証明書をインストールするには、前述の「Microsoft CA (AD上) からCA証明書を取得する」の手順からADルート証明書を取得するか、ルートCAサーバー http://CA-SERVER/certsrv からダウンロードします。
注:
次のコマンドは、中間証明書の構成にも適用されます。
たとえば、DERファイル (.crt, .cer, .der) をPEMに変換するには、次のようなコマンドを実行します。
sudo openssl x509 -inform der -in root.cer -out root.pem
その後、次のようなコマンドを実行して、ルートCA証明書を openssl ディレクトリにインストールします。
sudo cp root.pem /etc/pki/CA/certs/
注:
ルートCA証明書を /root パスに配置しないでください。そうしないと、FASはルートCA証明書に対する 読み取り 権限を持ちません。

ctxfascfg.sh を実行する

ctxfascfg.sh スクリプトを実行してFASを構成します。
sudo /opt/Citrix/VDA/sbin/ctxfascfg.sh
サイレントモードでctxfascfg.shを実行できます。スクリプトをサイレントモードで実行する前に、次の環境変数を設定します。
  • CTX\_FAS\_ADINTEGRATIONWAY=winbind \| sssd \| centrify \| pbis \| quest: Active Directory統合方法を示します。これは、CTX_EASYINSTALL_ADINTEGRATIONWAYが指定されている場合、CTX_EASYINSTALL_ADINTEGRATIONWAYに等しくなります。CTX_EASYINSTALL_ADINTEGRATIONWAYが指定されていない場合、CTX_FAS_ADINTEGRATIONWAYは独自の値を設定します。
  • CTX\_FAS\_CERT\_PATH \=\<certificate path\>: ルート証明書とすべての中間証明書が保存されているフルパスを指定します。
  • CTX_FAS_KDC_HOSTNAME: PBISとQuestを選択した場合のキー配布センター (KDC) のホスト名を指定します。
  • CTX_FAS_PKINIT_KDC_HOSTNAME: PKINIT KDCホスト名を指定します。特に指定がない限り、CTX_FAS_KDC_HOSTNAMEと同じです。複数のDelivery Controllerがある場合は、ドメインのすべてのKDCのホスト名を**/etc/krb5.conf**ファイルのpkinit_kdc_hostnameに追加します。詳細については、Knowledge Centerの記事CTX322129を参照してください。
  • CTX_FAS_SERVER_LIST='list-fas-servers' – フェデレーション認証サービス (FAS) サーバーは、ADグループポリシーを介して構成されます。ドメインGPOでのFASポリシー設定については、グループポリシーの構成を参照してください。Linux VDAはADグループポリシーをサポートしていませんが、代わりにFASサーバーのセミコロン区切りリストを提供できます。シーケンスはADグループポリシーで構成されているものと同じである必要があります。サーバーアドレスが削除された場合は、その空白をテキスト文字列**'\<none\>'**で埋め、サーバーアドレスの順序を変更しないでください。FASサーバーと適切に通信するには、FASサーバーで指定されているポート番号と一致するポート番号を追加してください。例: CTX_XDL_FAS_LIST='fas_server_1_url:port_number; fas_server_2_url: port_number; fas_server_3_url: port_number'。
    既存のLinux VDAインストールをアップグレードするには、次のコマンドを実行してFASサーバーを設定し、ctxvdaサービスを再起動して設定を有効にすることができます。
    sudo /opt/Citrix/VDA/bin/ctxreg create -k "HKLM\Software\Citrix\VirtualDesktopAgent\Authentication\UserCredentialService" -t "REG_SZ" -v "Addresses" -d "<Your-FAS-Server-List>" --force

    systemctl restart ctxjproxy

    systemctl restart ctxvda
    ctxregを介してFASサーバーを更新するには、次のコマンドを実行します。
    sudo /opt/Citrix/VDA/bin/ctxreg update -k "HKLM\Software\Citrix\VirtualDesktopAgent\Authentication\UserCredentialService" -v "Addresses" -d "<Your-FAS-Server-List>"

    systemctl restart ctxjproxy

    systemctl restart ctxvda
正しいActive Directory統合方法を選択し、その後、証明書の正しいパスを入力します (例: /etc/pki/CA/certs/)。
スクリプトはkrb5-pkinitおよびpam\_krb5パッケージをインストールし、関連する構成ファイルを設定します。RHEL 8以降では、PAM_KRB5がEPELリポジトリに移動されたため、スクリプトはこれらのディストリビューションでEPELを有効にしようとします。

FASを無効にする

Linux VDAでFASを無効にするには、次のコマンドを使用して、ConfDBからすべてのFASサーバーを削除します。
sudo /opt/Citrix/VDA/bin/ctxreg create -k "HKLM\Software\Citrix\VirtualDesktopAgent\Authentication\UserCredentialService" -t "REG_SZ" -v "Addresses" -d "" --force

systemctl restart ctxjproxy

systemctl restart ctxvda

FAS SSO障害時のセカンダリ認証を有効にする

Linux VDAは、FASシングルサインオン (SSO) が失敗した場合に特にセカンダリ認証方法を提供することで、ログインの回復力を強化します。この機能により、FAS SSOで問題が発生した場合、ユーザーはパスワード認証のために資格情報を手動で入力するよう求められます。この機能を有効にするには、次のコマンドを実行します。
create -k "HKLM\System\CurrentControlSet\Control\Citrix\AccessControl\Login\Global" -t "REG_DWORD" -v "SecondaryAuthEnabled" -d "0x00000001" --force

制限事項

  • FASはまだロック画面をサポートしていません。セッションでロックボタンをクリックすると、FASを使用してセッションに再度ログオンすることはできません。
  • このリリースでは、Federated Authentication Service architectural overviewの記事にまとめられている一般的なFAS展開のみをサポートしており、Windows 10 Azure AD Joinは含まれません。

トラブルシューティング

FASのトラブルシューティングを行う前に、以下を確認してください。
  • Linux VDAが正しくインストールされ、構成されていること。
  • パスワード認証を使用して、共通ストアでFAS以外のセッションが正常に起動できること。
FAS以外のセッションが正常に動作する場合、LoginクラスのHDXログレベルをVERBOSEに、VDAログレベルをTRACEに設定します。Linux VDAのトレースログを有効にする方法については、Knowledge Centerの記事CTX220130を参照してください。
Linux XDPingツールを使用して、Linux VDA環境に存在する可能性のある一般的な構成の問題を確認することもできます。

FASサーバー構成エラー

FASストアからのセッション起動に失敗します。
/var/log/xdl/hdx.logを確認し、次のようなエラーログを見つけてください。
2021-01-28 01:42:16.164 <P26422:S4> citrix-ctxlogin: validate_user: [Logon Type] Federated Authentication Logon.

2021-01-28 01:42:16.164 <P26422:S4> citrix-ctxlogin: validate_fas: entry

2021-01-28 01:42:16.164 <P26422:S4> citrix-ctxlogin: connect_fas: start connect to server 0

2021-01-28 01:42:16.164 <P26422:S4> citrix-ctxlogin: connect_fas0: failed to connect: Connection refused.

2021-01-28 01:42:16.164 <P26422:S4> citrix-ctxlogin: validate_fas: failed to connect to server [0], please confirm if fas service list is well configurated in condb

2021-01-28 01:42:16.164 <P26422:S4> citrix-ctxlogin: validate_fas: exit, 43

2021-01-28 01:42:16.164 <P26422:S4> citrix-ctxlogin: validate_user: failed to validate fas credential

2021-01-28 01:42:16.164 <P26422:S4> citrix-ctxlogin: LoginBoxValidate: failed validation of user 'user1@CTXDEV.LOCAL', INVALID_PARAMETER

解決策

次のコマンドを実行して、Citrixレジストリ値「HKEY\_LOCAL\_MACHINE\\SOFTWARE\\Citrix\\VirtualDesktopAgent\\Authentication\\UserCredentialService」が\&lt;Your-FAS-Server-List\>に設定されていることを確認します。
sudo /opt/Citrix/VDA/bin/ctxreg dump | grep "UserCredentialService"
既存の設定が正しくない場合、前述のSet FAS serversの手順に従って再度設定してください。

CA証明書構成が正しくありません

FASストアからのセッション起動に失敗します。灰色のウィンドウが表示され、数秒後に消えます。
/var/log/xdl/hdx.log を確認し、次のようなエラーログを見つけてください。
2021-01-28 01:47:46.210 <P30656:S5> citrix-ctxlogin: get_logon_certificate: entry

2021-01-28 01:47:46.210 <P30656:S5> citrix-ctxlogin: check_caller: current process: pid [30656], name [/opt/Citrix/VDA/bin/ctxlogin]

2021-01-28 01:47:46.210 <P30656:S5> citrix-ctxlogin: get_public_certificate: entry

2021-01-28 01:47:46.211 <P30656:S5> citrix-ctxlogin: query_fas: waiting for response...

2021-01-28 01:47:46.270 <P30656:S5> citrix-ctxlogin: query_fas: query to server success

2021-01-28 01:47:46.270 <P30656:S5> citrix-ctxlogin: get_public_certificate: exit

2021-01-28 01:47:46.270 <P30656:S5> citrix-ctxlogin: fas_base64_decode: input size 1888

2021-01-28 01:47:46.271 <P30656:S5> citrix-ctxlogin: fas_base64_decode: output size 1415

2021-01-28 01:47:46.271 <P30656:S5> citrix-ctxlogin: get_logon_certificate: get logon certificate success

2021-01-28 01:47:46.271 <P30656:S5> citrix-ctxlogin: cache_certificate: cache certificate success

2021-01-28 01:47:46.271 <P30656:S5> citrix-ctxlogin: get_logon_certificate: exit, 0

2021-01-28 01:47:48.060 <P30656:S5> citrix-ctxlogin: validate_user: pam_authenticate err,can retry for user user1@CTXDEV.LOCAL

解決策

ルートCA証明書とすべての中間証明書を格納する完全なパスが/etc/krb5.confに正しく設定されていることを確認します。完全なパスは次のようになります。

 [realms]

EXAMPLE.COM = {

    ......

    pkinit_anchors = DIR:/etc/pki/CA/certs/

    ......

}  
既存の設定が正しくない場合は、前述の証明書のインストールの手順に従って、再度設定してください。
または、ルートCA証明書が有効であるかどうかを確認します。

シャドウアカウントマッピングエラー

FASはSAML認証によって構成されます。ADFSユーザーがADFSログオンページでユーザー名とパスワードを入力した後、次のエラーが発生する可能性があります。
シャドウアカウントマッピングエラー
このエラーは、次のことを示しています。
  • ADFSユーザーは正常に検証されましたが、ADにシャドウユーザーが構成されていません。

解決策

ADでシャドウアカウントを設定します。

ADFSが構成されていません

FASストアへのログオン試行中に次のエラーが発生します。
ADFSが構成されていません
FASストアをSAML認証を使用するように構成したが、ADFS展開が不足している場合にこの問題が発生します。

解決策

フェデレーション認証サービス用にADFS IdPを展開します。詳しくは、「フェデレーション認証サービスADFS展開」を参照してください。

関連情報

既知の問題

FASを使用している場合、非英語文字を含む公開デスクトップまたはアプリセッションを起動しようとすると失敗することがあります。
非英語文字を含むセッションの起動に失敗する

回避策

CAツールでテンプレートの管理を右クリックし、Citrix\_SmartcardLogonテンプレートをこのActive Directory情報から構築から要求で提供に変更します。
要求で提供オプション