PoCガイド:デバイス証明書を使用したCitrix Gateway認証のnFactor

はじめに

大規模なエンタープライズ環境では、さまざまなユーザーペルソナのニーズを満たす柔軟な認証オプションが必要です。デバイス証明書とLDAPクレデンシャルを組み合わせることで、企業は「あなたが持っているもの」と「あなたが知っていること」の多要素認証を取得します。これにより、ユーザーは自分の身元をシームレスに検証し、アプリケーションやデータに安全にアクセスできます。

デバイス証明書認証

概要

このガイドでは、Citrix Gatewayで2要素認証を使用して概念実証環境を実装する方法について説明します。エンドポイント分析 (EPA) を使用して、最初の要素としてデバイス証明書を検証します。次に、ユーザーのドメイン資格情報を 2 番目の要素として使用します。Citrix Virtual Apps and Desktops公開仮想デスクトップを使用して、接続性を検証します。

次のコンポーネントのインストールと構成が完了したことを前提としています。

  • Citrix ADCがインストールされ、ライセンス供与
  • ワイルドカード証明書にバインドされた外部から到達可能な仮想サーバーで構成されたCitrix Gateway
  • 認証にLDAPを使用するCitrix GatewayとCitrix Virtual Apps and Desktops環境を統合する
  • Active Directory (AD) は、Microsoft 認証局がインストールされた環境で使用可能
  • Windows 10エンドポイントがドメインに参加しており、Citrix Workspaceアプリがインストールされている
  • エンドポイントユーザーはローカル管理者権限を持っているか、Citrix Gatewayプラグインがインストールされている必要があります

最新の製品バージョン、ライセンス、および要件の詳細については、Citrix ドキュメントを参照してください: EPAコンポーネントとしてのnFactorのデバイス証明書

構成

まず、Citrix ADC上のCLIにログインし、ログインスキーマとともに、それぞれEPAとLDAPの認証アクションおよび関連するポリシーを入力します。次に、GUI にログインして、ビジュアライザーツールで nFactor フローを構築し、多要素認証の設定を完了します。

EPA 認証ポリシー

次に、デバイス証明書をチェックする EPA アクションと、それを参照するポリシーを作成します。

EPA action 1 - authAct_EPA_dcnf

環境に応じて次のフィールドを更新し、その文字列をコピーして CLI に貼り付けます。 add authentication epaAction authAct_EPA_dcnf -csecexpr "sys.client_expr(\"device-cert_0_0\")"

EPA policy 1 - authPol_EPA_dcnf

環境に応じて次のフィールドを更新し、その文字列をコピーして CLI に貼り付けます。 add authentication Policy authPol_EPA_dcnf -rule true -action authAct_EPA_dcnf

LDAP 認証ポリシー

LDAP アクションと、それらを参照するポリシーを作成します。

LDAP アクションの場合は、必須フィールドに入力して LDAP アクションを文字列で作成し、CLI に貼り付けます。

  • ldapAction -アクション名を入力します。
  • serverIP -ドメインサーバーの FQDN または IP アドレスを入力します。
  • serverPort -LDAPポートを入力します。
  • ldapBase -関連するユーザーがディレクトリに格納されているドメインオブジェクトとコンテナの文字列を入力します。
  • ldapBindDn -ドメインユーザーのクエリに使用するサービスアカウントを入力します。
  • ldapBindDnPassword -サービスアカウントのパスワードを入力します。
  • ldapLoginName -ユーザーオブジェクトタイプを入力します。
  • groupAttrName -グループ属性名を入力します。
  • subAttributeName -サブ属性名を入力します。
  • secType -セキュリティの種類を入力します。
  • ssoNameAttribute -シングルサインオン名の属性を入力します。

LDAPポリシーの場合、LDAPアクションを参照するための必須フィールドに文字列を入力し、CLIに貼り付けます。

  • Policy -ポリシー名を入力します。
  • action -上記で作成したメールアクションの名前を入力します。

詳細については、「 LDAP 認証ポリシー」を参照してください。

  1. まず、Citrix ADCのNSIPアドレスへのSSHセッションを開いてCLIに接続し、 nsroot 管理者または同等の管理者ユーザーとしてログインします。

LDAP action 1 - authAct_LDAP_dcnf

環境に応じて次のフィールドを更新し、その文字列をコピーして CLI に貼り付けます。 add authentication ldapAction authAct_Ldap_dcnf -serverIP 192.0.2.50 -serverPort 636 -ldapBase "DC=workspaces,DC=wwco,DC=net" -ldapBindDn wsadmin@workspaces.wwco.net -ldapBindDnPassword xyz123 -encrypted -encryptmethod ENCMTHD_3 -kek -suffix 2021_03_23_19_58 -ldapLoginName userPrincipalName -groupAttrName memberOf -subAttributeName cn -secType SSL -passwdChange ENABLED

LDAP policy 1 - authPol_LDAP_dcnf

環境に応じて次のフィールドを更新し、その文字列をコピーして CLI に貼り付けます。 add authentication Policy authPol_LDAP_dcnf -rule true -action authAct_Ldap_dcnf

ログインスキーマ

次に、各ファクタで使用するログインスキーマを作成します。

lSchema 1 - lSchema_EPA_dcnf

EPA 係数はログインスキーマを必要としません。

lSchema 2 - lSchema_LDAP_dcnf

環境に応じて次のフィールドを更新し、その文字列をコピーして CLI に貼り付けます。 add authentication loginSchema ls_ldap_dcnf -authenticationSchema "/nsconfig/loginschema/LoginSchema/SingleAuth.xml"

証明書

ドメイン証明書

このPOCでは、Active Directory ドメインに対応するワイルドカード証明書を使用し、それはまた、ゲートウェイ仮想サーバーへのアクセスに使用する完全修飾ドメイン名に対応します (gateway.workspaces.wwco.net)

  1. Citrix ADC GUIにログインします
  2. [ トラフィック管理] > [SSL] > [証明書] > [すべての証明書 ] の順に選択し、ドメイン証明書と CA がインストールされ、リンクされていることを確認します。 詳細については、「 Citrix ADC SSL証明書 」を参照してください。

デバイス証明書

ユーザーとデバイスの証明書の管理には、多くのシステムおよびオプションがあります。このPOCでは、私たちのActive Directory サーバーにインストールされているMicrosoft の認証局を使用します. また、Windows 10 エンドポイントがドメインに参加しています。

  1. 私たちのドメインの [スタート] メニューから Windows 10 エンドポイントに参加しました。mmcを入力し、右クリックして管理者として実行
  2. [ファイル] > [追加と削除]、[証明書] の順に選択し、矢印を選択して [選択されたスナップイン] ウィンドウに移動し、[コンピュータアカウント]、[次へ]、[ローカルコンピュータ]、[完了] の順に選択し、[OK] をクリックします。
  3. [個人] フォルダを開き、[証明書] フォルダを右クリックし、[すべてのタスク] > [ 新しい証明書デバイス証明書の要求]
  4. 証明書の種類が表示されるまで [次へ] をクリックし、[コンピュータ] を選択し、[登録] をクリックし、[完了]
  5. インストールされた証明書をダブルクリックし、[証明書パス] タブを選択し、上部にあるルート CA を選択して、[証明書の表示] をクリックします。(注:Active Directory サーバーからCAをエクスポートできますが、POCの場合はここで行うことで手順を排除できます)
  6. ポップアップで [詳細] タブを選択し、[ファイルにコピー]、[次へ]、[次へ] の順にクリックします (DER エンコーディングを受け入れます)。
  7. [参照] を選択し、ファイル名を入力し、[保存]、[次へ] の順に選択し、[完了] を選択して CA 証明書ファイルを保存します。 デバイス証明書
  8. 次に、 **トラフィック管理 > SSL > 証明書 > CA 証明書に移動して ADC にインポートします。
  9. [インストール] をクリックし、名前を入力し、[ファイルの選択] DeviceCertificateCA、[ローカル] の順に選択し、ファイルを選択し、[開く] をクリックして [ デバイス証明書のインストール] をクリックします

nFactor ビジュアライザー

  1. 次に移動します。Security > AAA - Application Traffic > nFactor Visualizer > nFactor Flows
  2. [追加] を選択し、[係数] ボックスでプラス記号を選択します

Factor1_Epa_dcnf

  1. Factor1_Epa_dcnfを入力して [作成] を選択します。
  2. 同じボックスで、[ポリシーの追加] を選択します。
  3. EPA ポリシーauthPol_EPA_dcnfを選択します。
  4. [追加] を選択します。
  5. authPol_EPA_dcnf ポリシーの横にある緑色のプラス記号を選択して、別のファクタを作成します。

Factor2_Ldap_dcnf

  1. 入力 Factor2_Ldap_dcnf
  2. [作成] を選択します
  3. 同じボックスで、[スキーマの追加] を選択します。
  4. 選択 ls_ldap_dcnf
  5. 同じボックスで、[ポリシーの追加] を選択します。
  6. 選択 authPol_LDAP_dcnf
  7. [Goto Expression] で ENDを選択します

デバイス証明書

Citrix ADC 認証、承認、監査(Citrix ADC AAA)仮想サーバー

  1. 次に、[ セキュリティ] > [AAA-アプリケーショントラフィック] > [仮想サーバ ] に移動して、[追加]を選択します
  2. 次のフィールドを入力し、「OK」をクリックします。
    • 名前:一意の値。を入力しますDC_AuthVserver
    • IP アドレスの種類- Non Addressable
  3. [サーバー証明書なし] を選択し、ドメイン証明書を選択し、[選択]、[バインド]、[続行] の順にクリックします。
  4. nファクターフローなしを選択します
  5. [nFactor フローを選択] で右矢印をクリックし、前に作成したFactor1_Epa_dcnfフローを選択します。
  6. [選択]、[バインド]、[ デバイス証明書の続行] の順にクリックします。

Citrix Gateway-仮想サーバー

  1. 次に、 [Citrix Gateway]>[仮想サーバー]に移動します
  2. Citrix Virtual Apps and Desktops環境へのプロキシアクセスを提供する既存の仮想サーバーを選択します
  3. [編集] を選択します。
  4. [基本設定] で、編集する鉛筆アイコンを選択し、下部の [その他]
  5. 右下の [デバイス証明書 CA] で [追加] を選択し、DeviceCertificateCA の横のプラス (+) 記号をクリックし、続いて [OK] デバイス証明書をクリックします
  6. [証明書] で [CA 証明書]、[バインディングの追加] の順に選択し、[CA 証明書を選択] の下の右矢印を選択して [DeviceCertificateCA] を選択し、[ デバイス証明書をバインドして閉じる] を選択します。
  7. 現在LDAPポリシーがバインドされている場合は、基本認証-プライマリ認証の下に移動して、LDAPポリシーを選択します。次に、ポリシーをチェックし、[Unbind] を選択し、[はい] を選択して確定し、[Close]
  8. 右側の [詳細設定] メニューで、[認証プロファイル] を選択します
  9. [追加] を選択します。
  10. 名前を入力してください。 を入力しますDC_AuthProfile
  11. [認証仮想サーバー] で右矢印をクリックし、作成したCitrix ADC AAA仮想サーバーを選択します DC_AuthVserver
  12. [選択]、[作成] の順にクリックします。
  13. OK をクリックし、基本認証ポリシーが削除されている間に、仮想サーバーの認証プロファイルが選択されていることを確認します。 デバイス証明書
  14. 「完了」をクリック

ユーザエンドポイントの検証

私たちは、当社のCitrix Virtual Apps and Desktops 環境に認証することにより、認証をテストします.

  1. ブラウザを開き、Citrix Gatewayで管理されるドメインFQDNに移動します。https://gateway.workspaces.wwco.netを使用します。
  2. EPA プラグインがインストールされていない場合は、[ダウンロード] を選択します。
  3. そうでない場合は、EPA プラグインからスキャンを求められたら [はい] を選択します ([常時] を選択して自動的にスキャンすることもできます)。その後、デバイス証明書をスキャンします。 デバイス証明書
  4. 複数のデバイス証明書がある場合は、認証に使用する適切な証明書を選択するように求められます。そうでない場合は、ログオンプロンプトが表示されます。
  5. ドメインユーザー名とパスワードを入力します。 デバイス証明書
  6. ワークスペース内の使用可能なリソースから仮想デスクトップを選択し、正常に起動することを確認します。 デバイス証明書

概要

Citrix WorkspaceとCitrix Gateway Enterpriseは、ユーザーエクスペリエンスを複雑にすることなく、多要素認証を実装することで、セキュリティ体制を向上させることができます。デバイス証明書により、企業はユーザクレデンシャルに第 2 の認証要素をシームレスに追加し、優れたユーザーエクスペリエンスを維持しながら、セキュリティポスチャを向上させることができます。

参照ドキュメント

詳細については、以下を参照してください。

認証のためにCitrix Gateway でデバイス証明書を構成する方法 -OSCPレスポンダーを実装して証明書の失効ステータスを確認する方法を学びます。

NetScaler GatewayでのEPA詳細ログの理解と構成 -エンドポイントの nsepa.txt が、ダウンロードされたリストに正しいCAを記録していることを確認します。「Netscalerはデバイス証明書に許可されたCAのリストを送信しました。そうでない場合は、デバイス証明書を発行した正しい証明書を Gateway vServer にインポートしてバインドしたことを確認します。

Citrix GatewayセッションポリシーのポリシーHitsを検索するためのCitrix ADCコマンド- nsconmsg -d current -g _hitsのようなトラブルシューティングに役立つポリシーhitsの追跡など、CLIコマンドの詳細については、こちらをご覧ください。

PoCガイド:デバイス証明書を使用したCitrix Gateway認証のnFactor