導入ガイド:Citrix Secure Private Access・オンプレミス
オーディエンス
このドキュメントは、Citrix Secure Private Access On-Premisesソリューションの実装に関心のあるアーキテクト、ネットワーク設計者、技術専門家、パートナー、およびコンサルタントを対象としています。また、ネットワーク管理者、Citrix 管理者、マネージドサービスプロバイダー、またはこのソリューションの導入を検討しているすべてのユーザー向けに設計されています。
ソリューションの概要
CitrixSecure Private AccessOn-Premiseは、顧客管理のゼロトラストネットワークアクセス(ZTNA)ソリューションであり、最小権限の原則、シングルサインオン(SSO)、多要素認証、デバイス姿勢評価、アプリケーションレベルのセキュリティ制御、およびアプリケーション保護機能、およびシームレスなエンドユーザーエクスペリエンスを備えた内部WebおよびSaaSアプリケーションへのVPNレスアクセスを提供します。このソリューションでは、オンプレミスのStoreFront アプリとCitrix Workspaceアプリを活用して、Citrix Enterprise Browser内のWebアプリやSaaSアプリにアクセスするためのシームレスで安全なアクセスを実現します。また、このソリューションでは、NetScaler Gatewayを活用して認証と承認の制御を実施します。
Citrix Secure Private Access On-Premiseソリューションは、StoreFront オンプレミスポータルをWebおよびSaaSアプリへの統合アクセスポータルとして使用し、Citrix Workspaceに統合された仮想アプリやデスクトップへの統合アクセスポータルとして使用して、ブラウザベース(内部WebアプリおよびSaaSアプリ)へのゼロトラストアクセスを簡単に提供できるようにすることで、組織全体のセキュリティとコンプライアンス体制を強化します。
Citrix安全的私人访问はNetScaler网关と圣oreFront の要素を組み合わせて、エンドユーザーと管理者に統合されたエクスペリエンスを提供します。
機能 | 機能を提供するサービス/コンポーネント |
---|---|
アプリにアクセスするための一貫したUI | StoreFront オンプレミス/Citrix Workspaceアプリ |
SaaSおよびWebアプリへのSSO | NetScaler Gateway |
多要素認証 (MFA) とデバイスポスチャ (別名エンドポイント分析) | NetScaler Gateway |
Web アプリと SaaS アプリのセキュリティ制御とアプリ保護制御 | Citrix Enterprise Browser |
承認ポリシー | NetScaler Gateway |
構成と管理 | Citrix Studio UI、NetScaler UI、ADM |
可視性、監視、トラブルシューティング | NetScaler Gateway、ADM、およびCitrix Director |
使用例
Citrix Virtual Apps and Desktops(CVAD)On-PremiseによるCitrix Secure Private Access(SPA)オンプレミスソリューションは、仮想リソースとブラウザベースのアプリ(WebアプリとSaaSアプリ)の両方に、一貫したセキュリティを備えた統一された安全なエンドユーザーエクスペリエンスを提供します。
SPA On-Premisesソリューションは、顧客管理ソリューションを使用して次のユースケースに対応するように設計されています。
ユースケース #1:ブラウザを公開したり VPN を使用したりすることなく、従業員や契約社員が管理対象または管理対象外のデバイスから社内 Web アプリや SaaS アプリに安全にアクセスできます。
ユースケース #2:ブラウザを公開したり VPN を使用したりすることなく、管理対象または管理対象外のデバイスから社内の Web アプリや SaaS アプリを管理者が設定できるブラウザセキュリティ制御により、ラストマイルのゼロトラスト強制を包括的に実施できます。
ユースケース #3:複数の ID プロバイダー間での合併買収 (M&A) ユーザーアクセスを加速し、一貫したセキュリティを確保し、複数のユーザーグループにわたるシームレスなエンドユーザーアクセスを提供します。
要件
この記事では、StoreFront とNetScaler GatewayでSecure Private Accessを導入するための手順を段階的に説明します。Citrix Enterprise Browser(Citrix Workspaceアプリに含まれる)は、SaaSまたは社内Webアプリケーションと安全にやり取りするために使用されるクライアントソフトウェアです。
グローバルアプリ構成サービス(GACS)は、Citrix Enterprise Browserのブラウザ管理の要件です。
このガイドは、読者が次のCitrixおよびNetScaler製品の基本的な理解と、一般的なWindows管理経験があることを前提としています。
- Citrix Virtual Apps and Desktops
- StoreFront
- NetScaler Gateway
- Global App Configuration Service
バージョン:
- Citrix Workspaceアプリ
- Citrix Virtual Apps and Desktops — サポートされている LTSR と現在のバージョン
- StoreFront — LTSR 2203または非LTSR 2212以上
- NetScaler Gateway — 12.1以上
詳細については、必要に応じて次のドキュメントを参照してください。
- Citrix Virtual Apps and Desktops
- StoreFront
- NetScaler Gateway
- グローバルアプリ設定サービス (GACS)
製品の技術概要
Citrix Enterprise Browser(Citrix Workspaceアプリを含む)がインストールされたNetScaler Gatewayを介して、いつでもどこからでも、どのデバイスからでも内部Webアプリにアクセスできます。同じことがSaaSアプリにも当てはまりますが、NetScaler Gatewayを介して直接または間接的にアクセスできる点が異なります。
Citrix Enterprise BrowserとCitrix Workspaceアプリは、TLS暗号化接続を使用してNetScaler Gatewayと通信します。NetScaler Gatewayは、ユーザーのデバイス、強力なnFactorユーザー認証、アプリ認証、およびシングルサインオン(SSO)を評価することにより、ゼロトラストベースのアクセスを提供します。
Citrix Enterprise Browserは、Citrix Secure Browseプロトコルを使用して、一般公開のDNS名を必要とせずに内部ドメイン名(たとえばhttps://website.company.local
)にアクセスできるようにします。
Citrix Enterprise BrowserによるCitrix Secure Private Accessでは、ウォーターマーク、コピー/ペースト、アップ/ダウンロード、印刷制限などのWebアプリケーションのセキュリティ制御をさらに構成できます。これらの制限は、「policy.json」というファイルで設定されます。
構成プロセス
重要
構成ツールを使用すると、アプリやポリシーをすばやくオンボーディングしたり、NetScaler GatewayとStoreFront の設定を構成したりできます。
ただし、ツールを使用する前に次の点に注意してください。
- 「Web アプリケーションの公開」セクションと「ポリシーファイルの作成と公開」セクションを読んで、オンプレミスソリューション設定の構成要件を完全に理解していることを確認してください。
- このツールは、このトピックに記載されている既存の手順を補完するものとしてのみ使用でき、手動で行う必要がある構成に代わるものではありません。
ツールの詳細については、「Secure Private Access設定ツールを使用してアプリとポリシーを構成する」を参照してください。
ステップ 1 — Web アプリケーションを公開する
新しいウェブアプリケーションの初回公開では、Citrix Virtual Apps and Desktopsにインストールされた Windows PowerShell コマンドレットを使用します。Webアプリが作成されるとすぐに、Citrix Studioコンソールを使用して今後の編集を行うことができます。
- PowerShell SDK がインストールされているマシンで Windows パワーシェルを開きます。
- 次のコマンドを実行して、Citrix コマンドレットをロードします。
Add-PSSnapIn citrix*
- Web アプリに必要な変数を定義します。
コマンドを実行する前に、山括弧で囲まれたプレースホルダーを置き換えてください。(< >)
美元deliveryGroupName = " < delivery-group-name >“appU美元RL = "" $appName = "" $appIconFilePath = "" $appDescription = "KEYWORDS:SPAENABLED"
例
deliveryGroupName =“CVAD-On-Prem”一个美元ppURL = "https://finance.training.local" $appName = "Finance-Portal" $appIconFilePath = "C:\temp\Icon\finance.ico" $appDescription = "KEYWORDS:SPAENABLED"
- 次のコマンドを実行して、新しい Web アプリを公開します。
$deliveryGroupUid = (Get-BrokerDesktopGroup -Name $deliveryGroupName).Uid New-BrokerApplication -ApplicationType PublishedContent -CommandLineExecutable $appURL -Name $appName -DesktopGroup $deliveryGroupUid -Description $appDescription
- (オプション)次のコマンドを実行して Web アプリのアイコンを変更します。
$encodedIconData = [convert]::ToBase64String((Get-Content $appIconFilePath -Encoding byte)) New-BrokerIcon -EncodedIconData $encodedIconData $UidEncode = Get-BrokerIcon | Select-Object Uid $testUid = $UidEncode[-1].Uid $IconUid = [int]$testUid Set-BrokerApplication -name $appName -IconUid $IconUid
- 次のコマンドを実行して Web アプリを確認します。
Get-BrokerApplication -ApplicationType PublishedContent | Format-Table @{Label="Type"; Expression={$\_.ApplicationType}},Name,@{Label="URL"; Expression={$\_.CommandLineExecutable}},@{Label="Delivery group"; Expression={(Get-BrokerDesktopGroup -Uid $_.AssociatedDesktopGroupUids[0]).Name}},Description
出力例
| タイプ | 名前 | URL | デリバリーグループ | 説明 |—-|—-|————–|————– | 公開コンテンツ | ファイナンスポータル
https://finance.training.local
| | CVADオンプレミス | キーワード:SPA対応 | | 公開コンテンツ | 医師https://doctor.training.local
| | CVADオンプレミス | キーワード:SPA対応 |
- Citrix Studioの[アプリケーション]セクションに、新しいWebアプリケーションが表示されます。
今後の変更はすべてCitrix Studioコンソールで行われます。
注
コンテンツの公開方法の詳細については、ここをクリックしてください。
デフォルトアイコンを変更する方法の詳細については、ここをクリックしてください。
ステップ 2 — ポリシーファイルを作成して公開する
policy.json
という名前のポリシーファイルには、公開されている各ウェブアプリのルーティングとセキュリティ制御が定義されています。
たとえば、Office 365 SaaS アプリではセキュリティコントロールを有効にしてデータセンター経由でルーティングすべきでしょうか、それともトラフィックを直接送信すべきでしょうか?
注:ポリシーファイルの構造と値がわかっている場合は、「完全なpolicy.json ファイルの例」に進んでください。
ポリシーファイル構造
ポリシーファイルは JSON 形式で、次のセクションが含まれています。
- ポリシーポリシーセクションでは
、公開されているすべての SaaS/Web アプリのセキュリティ制御とトラフィックルーティングを定義します。未公開の Web サイトについては、キャッチオールポリシーが定義されています。
*注:ウェブアプリが異なるドメイン名で構成されている場合、セキュリティコントロールを正しく適用するにはすべて指定する必要があります。*
次の表は、使用可能なアクセスポリシーオプションとその値を示しています。
キー名 | ポリシーの説明 | 値 |
---|---|---|
name | 公開されている SaaS/Web アプリの名前 | アプリの公開時に入力した名前と同じ名前を使用することをお勧めします。 |
パターン | このアプリに関連するドメイン名をカンマで区切ったリスト。ワイルドカードも使用できます。これらのドメイン名は、Citrix Enterprise Browserがアプリにポリシーを適用するために使用されます。 | 例:「.office.com/」、「.office.net/」、「.microsoft.com/」、「.sharepoint.com/」 |
watermark_v1 | Web ページにウォーターマークを表示する | 有効または無効 |
clipboard_v1 | Web ページのクリップボードを制限する | 有効または無効 |
printing_v1 | Web ページからの印刷を制限する | 有効または無効 |
download_v1 | Web ページからのダウンロードを制限する | 有効または無効 |
upload_v1 | Web ページへのアップロードを制限する | 有効または無効 |
keylogging_v1 | Web ページのアンチキーロギングを有効または無効にする | 有効または無効 |
年代creencapture_v1 | Web ページのアンチスクリーンキャプチャ機能を有効または無効にする | 有効または無効 |
proxytraffic_v1 | Citrix Enterprise Browserがセキュアブラウズプロトコルを使用してトラフィックをNetScaler Gateway経由でWebページにトンネリングするか、直接アクセスを可能にするかを決定します | セキュアブラウズまたはダイレクト |
注
値
enabled
は[ 許可]、disabled
は[ブロック]の略です。*アンチキーロギングとアンチスクリーンキャプチャには 、Citrix Workspaceアプリに付属のアプリ保護機能をインストールする必要があります。*
テンプレート
"policies": [{ "name": "
", "patterns": [" /\*", " /\*"], "policy": { "watermark_v1": "disabled", "clipboard_v1": "disabled", "printing_v1": "disabled", "download_v1": "disabled", "upload_v1": "disabled", "keylogging_v1": "disabled", "screencapture_v1": "disabled", "proxytraffic_v1": "secureBrowse" } }, { "patterns": ["\*/\*"], "policy": { "proxytraffic_v1": "direct", } } ]
- システムシステムセクションでは
、トラフィックのルーティング先となるNetScaler Gatewayアドレスを定義します。
テンプレート
"system": { "secureBrowseAddress": "https://
" }
policy.json ファイルの完全なサンプル
{ "policies": [{ "name": "Finance-Portal", "patterns": ["\*.finance.training.local/\*"], "policy": { "watermark_v1": "enabled", "clipboard_v1": "enabled", "printing_v1": "disabled", "download_v1": "disabled", "upload_v1": "disabled", "keylogging_v1": "disabled", "screencapture_v1": "disabled", "proxytraffic_v1": "secureBrowse" } }, { "name": "Doctor", "patterns": ["\*.doctor.training.local/\*"], "policy": { "watermark_v1": "disabled", "clipboard_v1": "disabled", "printing_v1": "enabled", "download_v1": "enabled", "upload_v1": "enabled", "keylogging_v1": "disabled", "screencapture_v1": "disabled", "proxytraffic_v1": "secureBrowse" } }, { "patterns": ["\*/\*"], "policy": { "proxytraffic_v1": "direct" } } ], "system": { "secureBrowseAddress": "https://citrix.training.com" } }
ポリシーファイルの場所
policy.json
ファイルは、にある各StoreFront サーバーに配置する必要がありますC:\inetpub\wwwroot\Citrix\
。
注:最初に「リソース」と「SecureBrowser」というフォルダ構造を作成する必要があります。
例
この例では、「Store」というデフォルトのStoreFront ストアを使用します。
mkdir C:\inetpub\wwwroot\Citrix\Store\Resources mkdir C:\inetpub\wwwroot\Citrix\Store\Resources\SecureBrowser
policy.json
ファイルを「セキュアブラウザ」ディレクトリに配置します。
ポリシーファイルのダウンロードを確認
- StoreFront サーバーにインストールされているWebブラウザーを開きます。
- アドレス
https://
に移動して、ポリシーファイルをダウンロードします。/Citrix/ /Resources/SecureBrowser/policy.json
ダウンロードを実行する前に、山括弧の付いたプレースホルダーを交換してください。(< >)
例:https://xa02.training.local/Citrix/Store/Resources/SecureBrowser/policy.json
- ファイルは正常にダウンロードされるはずです。
注
要求フィルタリングがダウンロードをブロックしていることを示すIIS 404.7 エラーページが表示されたら、以下の手順に従ってください。
- インターネットインフォメーションサービス(IIS)マネージャーを開きます。
- 以前に作成したセキュアブラウザフォルダに移動します。
- 「機能ビュー」セクションで、「リクエストフィルタ」をダブルクリックします。
- アクションウィンドウで、「ファイル名拡張子を許可」をクリックします。
- 「.json」と入力して「OK」をクリックします。
- ダウンロードを再度テストします。
リクエストフィルタリングの設定方法の詳細については、ここをクリックしてください。
StoreFront ストア web.config
新しいポリシーの詳細をCitrix WorkspaceアプリとCitrix Enterprise Browserで利用できるようにするには、StoreFrontweb.config
ストアディレクトリ内のファイルを変更する必要があります。
(たとえば、C:\inetpub\wwwroot\Citrix\Store\web.config)
web.config
C:\inetpub\wwwroot\Citrix\
\
現在のファイルのバックアップを例:copy C:\inetpub\wwwroot\Citrix\Store\web.config C:\inetpub\wwwroot\Citrix\Store\web.config.orig
- メモ帳を開き、
ModifyWebConf.ps1
次のコードを挿入してファイルを保存し、web.config
ファイルを正しく編集します。
函数Editwebconf{参数(参数(委托人y = $true)][String]$Global:webconfigfile ) # Read in the contents of the file $content = Get-Content $Global:webconfigfile # Define the multi-line string you want to replace $oldText = ' ' # Define the new string you want to replace it with $newText = ' ' # Iterate through each line in the content and replace the old text with the new text for ($i = 0; $i -lt $content.Count; $i++) { if ($content[$i] -match '') { Write-Host "web.config has already been modified" exit } if ($content[$i] -match $oldText) { $content[$i] = $content[$i] -replace $oldText, $newText } } # Write the modified content back to the file Set-Content $Global:webconfigfile $content Write-Host "$newText" } Editwebconf
- Windows PowerShellを開きます。
- のディレクトリに切り替えます
ModifyWebConf.ps1
。 - 以下のコマンドを実行します
.\ModifyWebConf.ps1
。 - の入力を求められたら
Global:webconfigfile:
、ファイル名を含むフルパスを web.conf ファイルに挿入します。
例:C:\inetpub\wwwroot\Citrix\Store\web.config
出力
PS C:\temp >。\ WebConf.ps1 を修正 コマンドレット Editwebconf をコマンドパイプラインの位置 1 で、次のパラメーターに値を指定します。 グローバル:WebConfigFile: C:\inetpub\wwwroot\Citrix\Store\web.config
ステップ3 — オンプレミスのNetScaler Gateway 構成
NetScaler Gatewayの構成には、次の4つの重要なステップが含まれます。
注
クライアントレスアクセスは、NetScaler Gateway仮想サーバーで「ICA只有“がfalseに設定されている場合にのみ機能します。(新規導入時のデフォルト設定)
クライアントレスアクセスをStoreFront と連携させるには、StoreStoreFront 構成内でコールバックURLを指定します。
公開されているWebアプリにアクセスするには、Citrix WorkspaceアプリとCitrix Enterprise Browserを使用する必要があります。
クライアントレスアクセスを有効にする
Citrix Enterprise Browserが Web アプリに接続するには、クライアントレスアクセスが必要です。
クライアントレスアクセスを有効にするには、次の 2 つのオプションがあります。
Citrix では、クライアントレスアクセスをより適切に制御できるように、セッションポリシーごとに有効にすることをお勧めします。
クライアントレスアクセスグローバル
グローバルに有効なクライアントレスアクセスは、構成済みのすべてのNetScaler Gateway仮想サーバーに適用されます。
NetScaler GUIまたはCLIを使用して有効にすることができます。
NetScaler GUI
- [構成]タブで[Citrix Gateway]を展開し、[グローバル設定]をクリックします。
- 「グローバル設定」ページで、「グローバル設定の変更」をクリックします。
- [クライアントエクスペリエンス] タブで、[クライアントレスアクセス]に [オン] を選択します。
- 「公開アプリケーション」タブで、「ICAプロキシ」に「オフ」を選択し、「OK」をクリックします。
NetScaler CLI
- 以下のコマンドを実行します。
年代et vpn parameter -clientlessVpnMode On -icaProxy OFF
- 以下のコマンドを実行します。
クライアントレスアクセスセッションポリシー
セッションごとのクライアントレスアクセスポリシーを設定すると、ユーザ、グループ、または Gateway 仮想サーバの設定を絞り込むことができます。icaProxy
設定を簡単に切り替えるには、同じ設定で新しいセッションポリシー/アクションを作成すると便利です。clientless access
NetScaler GUIまたはCLIを使用して有効にすることができます。
NetScaler GUI
- [構成]タブで、[NetScaler Gateway]を展開し、[ポリシー]を展開して、[セッション]をクリックします。
- セッションページで、[セッションプロファイル]タブに切り替え、Citrix Workspaceアプリのセッションプロファイルを開きます。(たとえば、AC_OS_192.168.0.100)
- [クライアントエクスペリエンス] タブの [クライアントレスアクセス] の横にある [グローバルオーバーライド] をクリックし、[オン] を選択します。
- 「公開アプリケーション」タブの「ICAプロキシ」の横にある「グローバルオーバーライド」をクリックし、「オフ」を選択して「OK」をクリックします。
- NetScaler CLI
- 次のコマンドを実行します。コマンドを実行する前に、山括弧で囲まれたプレースホルダーを置き換えてください。(< >)
年代et vpn sessionAction
-clientlessVpnMode On -icaProxy OFF
- 次のコマンドを実行します。コマンドを実行する前に、山括弧で囲まれたプレースホルダーを置き換えてください。(< >)
Web アドレスエンコーディングの設定
クライアントレスアクセスを有効にすると、内部 Web アプリケーションのアドレスをエンコードしたり、アドレスをクリアテキストのままにしたりできます。 クライアントレスアクセスの URL エンコーディングはclearに設定することを推奨します。
クライアントレスアクセスの URL エンコーディングを設定するには、次の 2 つのオプションがあります。
グローバルな URL エンコーディング
グローバルに有効なクライアントレスアクセスは、構成済みのすべてのNetScaler Gateway仮想サーバーに適用されます。
NetScaler GUIまたはCLIを使用して有効にすることができます。
- NetScaler GUI
- [構成]タブで[Citrix Gateway]を展開し、[グローバル設定]をクリックします。
- 「グローバル設定」ページで、「グローバル設定の変更」をクリックします。
- 「クライアントエクスペリエンス」タブで、「クライアントレスアクセス URL エンコーディング」で「クリア**」を選択し、「 **OK」をクリックします。
- NetScaler CLI
- 以下のコマンドを実行します。
年代et vpn parameter -clientlessModeUrlEncoding TRANSPARENT
- 以下のコマンドを実行します。
URL エンコーディングセッションポリシー
セッションポリシーごとにクライアントレスアクセス URL エンコーディングを設定すると、ユーザ、グループ、または Gateway 仮想サーバの設定を絞り込むことができます。
NetScaler GUIまたはCLIを使用して有効にすることができます。
- NetScaler GUI
- [構成]タブで、[NetScaler Gateway]を展開し、[ポリシー]を展開して、[セッション]をクリックします。
- セッションページで、[セッションプロファイル]タブに切り替え、Citrix Workspaceアプリのセッションプロファイルを開きます。(たとえば、AC_OS_192.168.0.100)
- 「クライアントエクスペリエンス」タブで、「クライアントレスアクセス URL エンコーディング」の横にある「グローバルオーバーライド」をクリックし、「クリア」を選択して「OK」をクリックします。
- NetScaler CLI
- 次のコマンドを実行します。コマンドを実行する前に、山括弧で囲まれたプレースホルダーを置き換えてください。(< >)
年代et vpn sessionAction
-clientlessModeUrlEncoding TRANSPARENT
- 次のコマンドを実行します。コマンドを実行する前に、山括弧で囲まれたプレースホルダーを置き換えてください。(< >)
Secure Browse を有効にする
Citrix Enterprise Browserは、セキュアブラウズモードを使用して、従来のVPNを必要とせずにアプリケーションにアクセスします。
セキュアブラウズモードを設定するには、次の 2 つのオプションがあります。
グローバルSecure Browse
グローバルに有効なSecure Browse が、構成済みのすべてのNetScaler Gateway仮想サーバーに適用されます。
NetScaler GUIまたはCLIを使用して有効にすることができます。
- NetScaler GUI
- [構成]タブで[Citrix Gateway]を展開し、[グローバル設定]をクリックします。
- 「グローバル設定」ページで、「グローバル設定の変更」をクリックします。
- 「セキュリティ」タブで、「Secure Browse」で「有効」を選択し、「OK」をクリックします。
- NetScaler CLI
- 以下のコマンドを実行します。
年代et vpn parameter -secureBrowse ENABLED
- 以下のコマンドを実行します。
Secure Browse セッションポリシー
セッションごとにSecure Browseポリシーを構成すると、ユーザー、グループ、またはGateway仮想サーバーの設定を絞り込むことができます。
NetScaler GUIまたはCLIを使用して有効にすることができます。
- NetScaler GUI
- [構成]タブで、[NetScaler Gateway]を展開し、[ポリシー]を展開して、[セッション]をクリックします。
- セッションページで、[セッションプロファイル]タブに切り替え、Citrix Workspaceアプリのセッションプロファイルを開きます。(たとえば、AC_OS_192.168.0.100)
- 「セキュリティ」タブの「Secure Browse」の横にある「グローバルオーバーライド」をクリックし、「有効」を選択して「OK」をクリックします。
- NetScaler CLI
- 次のコマンドを実行します。コマンドを実行する前に、山括弧で囲まれたプレースホルダーを置き換えてください。(< >)
年代et vpn sessionAction
-secureBrowse ENABLED
- 次のコマンドを実行します。コマンドを実行する前に、山括弧で囲まれたプレースホルダーを置き換えてください。(< >)
クライアントレスアクセスモードでのドメインの書き換えから除外する
クライアントレスアクセスモードを有効にすると、NetScalerは「/cvpn」要求に対してサーバー側で書き換えを行います。StoreFront server FQDN(s)
またはStoreFront Load Balancer FQDN
およびcitrix.com
を除外します。
この構成は、NetScaler Gatewayのグローバル設定でのみ使用できます。
除外は、NetScaler GUIまたはCLIを使用して構成できます。
- NetScaler GUI
- [構成]タブで[Citrix Gateway]を展開し、[グローバル設定]をクリックします。
- [グローバル設定] ページで、[クライアントレスアクセス用のドメインの設定] をクリックします。
- [ ドメインを除外]を選択し、
StoreFront server FQDN(s)
またはStoreFront Load Balancer FQDN
を挿入して[ +]をクリックします。 citrix.com
の手順 3 を繰り返します。- [OK]をクリックします。
- NetScaler CLI
次のコマンドを実行します。コマンドを実行する前に、山括弧で囲まれたプレースホルダーを置き換えてください。(< >)
bind policy patset ns_cvpn_default_bypass_domains
bind policy patset ns_cvpn_default_bypass_domains citrix.com
ステップ 4 — 公開されている Web アプリへのアクセスをユーザーに許可する
CVAD で Web アプリを公開しても、ユーザーアクセスを制御することはできません。これは、承認ポリシーを使用してNetScaler Gatewayで実行する必要があります。 承認ポリシーは、ユーザーまたはグループにバインドされます。
ポリシーがどのように適用されるかを知ることは不可欠です。
- ユーザー
- グループ
ユーザーポリシーは常にグループバウンドポリシーよりも優先されます。 ユーザーレベルで Web サイトを許可し、グループレベルでこのサイトを拒否すると、グループレベルでのポリシーの優先度が高いかどうかにかかわらず、アクセスが許可されます。
同じユーザーまたはグループにバインドされた複数のポリシーは、優先順位によって区別されます。 優先度が高い (番号が小さい) 方が、優先度が低い (番号が高い) よりも先に一致することを知っておくことが不可欠です。許可されたポリシーが拒否されたポリシーよりも優先されるようにしてください。
アクセス権限を制御するには、公開されている Web アプリケーションごとにグループを作成することをおすすめします。(ゼロトラストアプローチ)
デフォルトの承認ポリシー
StoreFront サーバーへのアクセスを許可し、公開されているすべてのWebアプリへのアクセスを拒否するには、デフォルトで2つの認証ポリシーを作成する必要があります。
Allow_StoreFront
Deny_ALL
Web アプリ承認ポリシー
デフォルトの承認ポリシーができたので、次のステップは、公開されているウェブアプリごとに承認ポリシーを作成することです。
Allow_
Allow_
承認ポリシーの作成
承認ポリシーは、NetScaler GUIまたはCLIを使用して構成できます。
- NetScaler GUI
- [構成]タブで、[NetScaler Gateway]を展開し、[ポリシー]を展開して、[認証]をクリックします。
- 「認証」ページで、「追加」をクリックします。
- 承認ポリシーの名前を挿入し、アクションを選択し、**詳細ポリシーを選択してエクスプレッションを作成します**。
- [作成]をクリックします。
- NetScaler CLI
- 次のコマンドを実行します。コマンドを実行する前に、山括弧で囲まれたプレースホルダーを置き換えてください。(< >)
add authorization policy
"HTTP.REQ.HOSTNAME.CONTAINS(\" \")" ALLOW
- 次のコマンドを実行します。コマンドを実行する前に、山括弧で囲まれたプレースホルダーを置き換えてください。(< >)
例
デフォルトの承認ポリシー:
add authorization policy Allow_StoreFront "HTTP.REQ.HOSTNAME.CONTAINS("
")" ALLOW add authorization policy Deny_ALL true DENY Web アプリ認証ポリシー:
add authorization policy Allow_Finance "HTTP.REQ.HOSTNAME.CONTAINS("finance.training.local")" ALLOW add authorization policy Allow_Doctor "HTTP.REQ.HOSTNAME.CONTAINS("doctor.training.local")" ALLOW
拘束力のある承認ポリシー
承認ポリシーは、NetScaler GUIまたはCLIを使用してバインドできます。
- NetScaler GUI
- [構成]タブで[NetScaler Gateway]を展開し、[ユーザー管理]を展開して、[AAAグループ]または[AAAグループ]をクリックします。
- 「AAA グループ」ページまたは「AAA ユーザ」ページで、「追加」をクリックします。
- ユーザーまたはグループ名を挿入し、「OK」をクリックします。
- [詳細設定] で [承認ポリシー] をクリックします。
- 「ポリシーバインディング“ページで,バインドするポリシーを選択し,”優先度」を設定します。タイプとして「リクエスト」を選択し、「バインド」をクリックします。
- バインドするポリシーごとにステップ 5 を繰り返します。
- [完了]をクリックします。
- NetScaler CLI
次のコマンドを実行します。コマンドを実行する前に、山括弧で囲まれたプレースホルダーを置き換えてください。(< >)
add aaa group
bind aaa group -policy -priority -gotoPriorityExpression END
例
ユーザー-特定の公開済みウェブアプリへのアクセスを許可:
add aaa user testuser01 bind aaa user testuser01 -policy Allow_Doctor -priority 63000 -gotoPriorityExpression END
グループ-公開されているWebアプリやStoreFront へのアクセスを許可し、その他のリクエストをすべて拒否します。
add aaa group Doctor bind aaa group Doctor -policy Allow_Doctor -priority 10 -gotoPriorityExpression END bind aaa group Doctor -policy Allow_StoreFront -priority 999 -gotoPriorityExpression END bind aaa group Doctor -policy Deny_ALL -priority 1000 -gotoPriorityExpression END
add aaa group Finance bind aaa group Finance -policy Allow_Finance -priority 10 -gotoPriorityExpression END bind aaa group Finance -policy Allow_StoreFront -priority 999 -gotoPriorityExpression END bind aaa group Finance -policy Deny_ALL -priority 1000 -gotoPriorityExpression END
テスト
- 内部または外部のクライアントでCitrix Workspaceアプリを開いてログインします
トラブルシューティング
ログインに成功した後にエラーメッセージが表示される場合は、「NetScaler-使用可能なイントラネットIPがありません」を参照してください。
- Webアプリの起動
注:ログオンしているユーザーはDoctor
アプリケーションにアクセスできますが、Finance-Portal
へのアクセスは拒否されます。
トラブルシューティング
Citrix Enterprise Browserにエラーコードが表示される:
可視性、監視、トラブルシューティング
ADM — Gateway Insight
Gateway Insightは、NetScaler Gatewayへのログオン時に、アクセスモードに関係なく、すべてのユーザーが遭遇した障害を可視化します。使用可能なすべてのユーザー、アクティブなユーザー数、アクティブなセッション数、すべてのユーザーがいつでも使用したバイト数とライセンスのリストを表示します。ユーザーのエンドポイント分析 (EPA)、認証、シングルサインオン (SSO)、およびアプリケーション起動の失敗を表示します。
詳細については、ADM — Gateway Insight のドキュメントを参照してください。
Citrix Director
Citrix Directorのトラブルシューティングダッシュボードでは、Citrix Virtual AppsまたはDesktopsサイトのヘルスモニタリングをリアルタイムおよび履歴で行うことができます。これにより、障害をリアルタイムで確認できるため、エンドユーザーが何を経験しているのかをよりよく把握できます。
詳しくは、「Citrix Virtual Apps and Desktops — Director」ドキュメントを参照してください。
まとめ
オンプレミス向けCitrix Secure Private Access により、SaaSや社内Webアプリケーションへのゼロトラストベースのアクセスが可能になります。このデプロイガイドでは、ウェブアプリの公開とセキュリティ制御の設定に必要な具体的な手順について説明しました。その結果、ユーザーは仮想アプリと同じように SaaS や社内 Web アプリにアクセスできる、真のシングルサインオンを備えた統合ソリューションが完成しました。
デプロイメントのトラブルシューティング
NetScaler-使用可能なイントラネットIPはありません
Citrix Workspaceアプリへのログインに成功すると、ユーザーにはアプリケーションが表示されず、ns.log
に次のメッセージが書き込まれます。default SSLVPN Message 659106 0 : "Failed to process setclient for id
これは既知の問題(CTX461242)であり、Citrix WorkspaceアプリのセッションプロファイルでUse Mapped IP
をNS
にまたはUse Intranet IP
をOFF
に設定することで解決できます。
NetScaler CLI:年代et vpn sessionAction AC_OS_192.168.0.100 -useMIP NS -useIIP OFF
CEB — PS1001
このエラーコードは、Citrix WorkspaceアプリがStoreFront から「policy.json」ファイルを取得できないことを示しています。
次のセクションを確認してください。
CEB — PS1003
このエラーコードは、「policy.json」ファイルに何か問題があることを示しています。
「policy.json ファイルの例を完成させる」のセクションを確認してください。