Gateway

RDPプロキシ

RDPプロキシ機能は、NetScaler Gateway の一部として提供されます。一般的な展開では、RDP クライアントはリモートユーザーのマシンで実行されます。NetScaler Gateway アプライアンスはDMZ内に展開され、RDPサーバーファームは社内ネットワークにあります。

リモートユーザー。

  1. NetScaler Gateway パブリックIPアドレスに接続する
  2. SSL VPN 接続を確立します。
  3. 認証する
  4. NetScaler Gateway アプライアンスを介してリモートデスクトップにアクセスします。

RDP プロキシ機能は、クライアントレス VPN および ICA プロキシモードでサポートされます。

注:

NetScaler Gateway は、リモートデスクトップセッションホスト(RDSH)、リモートアプリ、RDSマルチユーザー、RDPセッション、またはRDPアプリをサポートしていません。

次のRDPプロキシ機能は、NetScaler Gateway を介してリモートデスクトップファームへのアクセスを提供します。

  • クライアントレス VPN または ICA プロキシモード(フルトンネルなし)を介して RDP トラフィックを保護します。

  • NetScaler Gateway を介したRDPサーバーへのSSO(シングルサインオン)。また、必要に応じて SSO を無効にするオプションも用意されています。

  • 強制(SmartAccess)機能。NetScaler ADC管理者は、NetScaler Gateway 構成を通じて特定のRDP機能を無効にできます。

  • すべてのニーズに対応するシングル/ステートレス(デュアル)ゲートウェイソリューション(VPN/ICA/RDP/Citrix Endpoint Management)。

  • RDP 用のネイティブ Windows MSTSC クライアントとの互換性は、カスタムクライアントを必要としません。

  • Microsoftが提供している既存の RDP クライアントを MACOSX、iOS、Android で使用する。

次の図は、展開の概要を示しています。

RDP プロキシの概要

クライアントレス VPN を介した導入

このモードでは、RDP リンクは Gateway ホームページまたはポータルで、ブックマークとして、add vpn url構成または外部ポータルを介して公開されます。ユーザーは、これらのリンクをクリックして、リモートデスクトップにアクセスできます。

ICA プロキシを介した展開

このモードでは、wihomeパラメータを使用して、Gateway VIP でカスタムホームページを設定します。このホームページは、ユーザーがアクセスできるリモートデスクトップリソースの一覧を使用してカスタマイズできます。このカスタムページは、NetScaler ADCでホストすることも、外部の場合は既存のGatewayポータルページのiFrameにすることもできます。

どちらのモードでも、ユーザーがプロビジョニングされたRDPリンクまたはアイコンをクリックすると、対応するリソースのHTTPSリクエストがNetScaler Gateway に到着します。Gateway は、要求された接続の RDP ファイルコンテンツを生成し、クライアントにプッシュします。ネイティブ RDP クライアントが呼び出され、ゲートウェイ上の RDP リスナーに接続します。ゲートウェイは、強制 (SmartAccess) をサポートすることによって RDP サーバーへの SSO を実行します。ゲートウェイは、NetScaler ADC構成に基づいて特定のRDP機能へのクライアントアクセスをブロックし、RDPクライアントとサーバー間のRDPトラフィックをプロキシします。

強制の詳細

NetScaler ADC管理者は、NetScaler Gateway 構成を通じて特定のRDP機能を構成できます。NetScaler Gateway は、重要なRDPパラメータに対して「RDP強制」機能を提供します。NetScaler ADCは、クライアントがブロックされたパラメータを有効にできないようにします。ブロックされたパラメータが有効の場合、RDP 強制機能はクライアント対応パラメータよりも優先され、適用されません。

重要: 強制機能は、SSO が有効な場合にのみ適用できます。

強制用にサポートされている RDP パラメータ

次のリダイレクトパラメータの強制がサポートされています。これらのパラメータは、RDP クライアントプロファイルの一部として設定できます。

  • クリップボードのリダイレクト

  • プリンタのリダイレクト

  • ディスクドライブのリダイレクト

  • COM ポートのリダイレクト

  • PNP デバイスのリダイレクト

接続フロー

接続フローは、次の 2 つのステップに分けることができます。

  • RDP リソースの列挙と RDP ファイルのダウンロード。
  • RDP 接続の起動。

前述の接続フローに基づいて、2 つの展開ソリューションがあります。

  • ステートレス(デュアル)ゲートウェイソリューション-RDP リソースの列挙と RDP ファイルのダウンロードはAuthenticator Gatewayを介して行われますが、RDP 接続の起動は RDP リスナーゲートウェイを介して行われます。

  • 単一ゲートウェイソリューション-RDP リソースの列挙、RDP ファイルのダウンロード、および RDP 接続の起動は、同じゲートウェイを介して行われます。

ステートレス (デュアル) ゲートウェイの互換性

次の図は、展開を示しています。

デュアルゲートウェイの互換性

  • ユーザはAuthenticator Gateway VIP に接続し、クレデンシャルを提供します。

  • ゲートウェイへのログインに成功すると、ユーザーはホームページまたは外部ポータルにリダイレクトされ、ユーザーがアクセスできるリモートデスクトップリソースが列挙されます。

  • ユーザーが RDP リソースを選択すると、Authenticator Gateway VIP は、ユーザーがクリックした公開リソースを示す形式https://vserver-vip/rdpproxy/rdptarget/listenerで要求を受信します。この要求には、ユーザーが選択した RDP サーバーの IP アドレスとポートに関する情報が含まれます。

  • Authenticator Gatewayは /rdpproxy/ 要求を処理します。ユーザはすでに認証されているため、このリクエストには有効な Gateway Cookie が付属しています。

  • RDPTargetおよびRDPUser情報は STA サーバに保存され、STA チケットが生成されます。STA サーバに保存された情報は、設定済みの事前共有キーを使用して暗号化されます。Authenticator Gatewayは、ゲートウェイ仮想サーバ上に設定されている STA サーバの 1 つを使用します。

  • /rdpproxy/ 要求で取得された「リスナー」情報は、.rdp fileに「fulladdress」 としてに追加され、STAチケット(STA AuthId が前に付く)は.rdp fileに「loadbalanceinfo」として追加されます。

  • .rdp fileがクライアントエンドポイントに返送されます。

  • ネイティブ RDP クライアントが起動し、RDPListener Gatewayに接続します。STA チケットを最初のパケットで送信します。

    RDPListenerゲートウェイは STA チケットを検証し、RDPTargetおよびRDPUser情報を取得します。使用する STA サーバは、loadbalanceinfoに存在する「AuthID」を使用して取得されます。

  • ゲートウェイセッションは、承認/監査ポリシーを格納するために作成されます。ユーザーのセッションが存在する場合、そのセッションは再利用されます。

  • RDPListenerゲートウェイは、RDPTargetに接続し、CREDSSP を使用してシングルサインオンします。

重要:

  • ステートレス RDP プロキシの場合、STA サーバは RDP クライアントによって送信された STAチケットを検証してRDPTarget/RDPUser情報を取得します。VPN 仮想サーバーに加えて STA サーバーをバインドする必要があります。

シングルゲートウェイの互換性

次の図は、展開を示しています。

シングルゲートウェイの互換性

重要:

単一ゲートウェイ展開の場合、STA サーバーは必要ありません。Authenticator Gatewayは、RDPTargetおよびCitrix 認証、承認、および監査セッションCookieを安全にエンコードし、.rdp fileloadbalanceinfoとして送信します 。RDP クライアントがこのトークンを最初のパケットで送信すると、Authenticator GatewayはRDPTarget情報をデコードし、セッションを検索し、RDPTargetに接続します。

シングルリスナーのサポート

  • RDP トラフィックと SSL トラフィックの両方に対応する単一リスナー。

  • RDPファイルのダウンロードとRDPトラフィックは、NetScaler ADCアプライアンスの同じ2つのタプル(IPとポート)を介して処理できます。

RDP プロキシのライセンス要件

プレミアムエディション、アドバンスドエディション

注:

RDP プロキシ機能は、Gateway プラットフォームライセンスのみ、または Standard エディションのみをお持ちのお客様にはご利用いただけません。

RDP プロキシを有効にするには、次のコマンドを使用します。

enable feature rdpProxy
<!--NeedCopy-->

ブックマーク

ポータルを介した RDP リンク生成。ユーザーの RDP リンクを構成したり、外部ポータルを使用して RDP リンクを公開したりする代わりに、targerIP:Portを提供して独自の URL を生成するオプションをユーザーに与えることができます。ステートレス RDP プロキシ展開の場合、管理者は RDP クライアントプロファイルの一部として、RDP リスナー情報を FQDN: ポート形式で含めることができます。これはrdpListenerオプションの下で行われます。この構成は、デュアルゲートウェイモードのポータル経由の RDP リンク生成に使用されます。

Bookmark

ブックマークを作成する

  1. RDP リソースにアクセスするためのポータルページにブックマークを作成します (actualURLはrdp://で始まります)。

  2. VPN URL を追加 <urlName> <linkName>  <actualURL>

    • URLは次の形式にする必要があります。rdp://<TargetIP:Port>
    • ステートレス RDP プロキシモードの場合、URL は次の形式である必要があります。 rdp://<TargetIP:Port>/<ListenerIP:Port>

    • URL は、次の形式でポータルに公開されます。 https://<VPN-VIP>/rdpproxy/<TargetIP:Port> https://<VPN-VIP>/rdpproxy/<TargetIP:Port>/<ListenerIP:Port>
  3. ブックマークをユーザー、グループ、VPN 仮想サーバー、または VPN グローバルにバインドします。

RDP プロキシで有効にする機能とモード

-  enable ns feature ssl

-  enable ns feature sslvpn

-  enable ns feature rdpproxy

-  enable mode usnip
<!--NeedCopy-->

RDP プロキシの概要設定手順

ステートレス RDP プロキシ設定に関連する次の高レベルのステップ。

  • RDP サーバープロファイルを作成する
  • RDP クライアントプロファイルを作成する
  • 仮想サーバーを作成してバインドする
  • ブックマークを作成する
  • セッションプロファイルまたはポリシーを作成または編集する
  • ブックマークをバインドする

クライアントプロファイルを構成する

Authenticator Gatewayでクライアントプロファイルを設定します。次に、設定例を示します。

add rdpClient profile <name> [-addUserNameInRdpFile ( YES | NO )] [-audioCaptureMode ( ENABLE | DISABLE )] [-keyboardHook <keyboardHook>] [-multiMonitorSupport ( ENABLE | DISABLE )] [-psk <string>] [-rdpCookieValidity <positive_integer>] [-rdpCustomParams <string>] [-rdpFileName <string>] [-rdpHost <optional FQDN that will be put in the RDP file as ‘fulladdress>] [-rdpUrlOverride ( ENABLE | DISABLE )] [-redirectClipboard ( ENABLE | DISABLE )] [-redirectComPorts ( ENABLE | DISABLE )] [-redirectDrives ( ENABLE | DISABLE )] [-redirectPnpDevices ( ENABLE | DISABLE )] [-redirectPrinters ( ENABLE | DISABLE )] [-videoPlaybackMode ( ENABLE | DISABLE )]
<!--NeedCopy-->

RDP クライアントプロファイルを VPN 仮想サーバに関連付けます。

これは、SessionAction+SessionPolicy を設定するか、グローバル VPN パラメータを設定することによって行うことができます。

例:

add vpn sessionaction <actname> -rdpClientprofile <rdpprofilename>

add vpn sessionpolicy <polname> NS_TRUE <actname>

bind vpn vserver <vservername> -policy <polname> -priority <prioritynumber>
<!--NeedCopy-->

または

set vpn parameter –rdpClientprofile <name>
<!--NeedCopy-->

サーバープロファイルを構成する

リスナーゲートウェイでサーバプロファイルを設定します。

add rdp ServerProfile <profilename> -rdpIP <IPV4 address of the RDP listener> -rdpPort <port for terminating RDP client connections> -psk <key to decrypt RDPTarget/RDPUser information, needed while using STA>`
<!--NeedCopy-->

rdp ServerProfileは VPN 仮想サーバ上で設定する必要があります。

add vpn vserver v1 SSL <publicIP> <portforterminatingvpnconnections> -rdpServerProfile <rdpServer Profile>`  
<!--NeedCopy-->

設定例

CLI を使用した RDP プロキシの設定

CLI を使用した RDP プロキシ設定の例を次に示します。

  • ターゲット情報を含むユーザの VPN URL を追加します。

     add aaa user Administrator –password freebsd123$%^
    
     add vpn url rdp RdpLink rdp://rdpserverinfo
    
     add dns addrec rdpserverinfo 10.102.147.132
    
     bind aaa user Administrator  –urlName rdp
     <!--NeedCopy-->
    
  • VPN 接続用の RDP クライアントおよびサーバプロファイルを設定します。

     add rdp clientprofile p1 –psk citrix -redirectClipboard ENABLE
    
     add rdp serverprofile p1 -rdpIP 10.102.147.134 -psk citrix
    
     add vpn vserver mygateway SSL  10.102.147.134 443 –rdpserverprofile p1
    
     set vpn parameter -clientlessVpnMode ON -defaultAuthorizationAction ALLOW -rdpClientProfileName p1
    
     add ssl certKey gatewaykey -cert rdp_rootcert.pem  -key rdp_rootkey
    
     bind ssl vserver mygateway -certkeyName gatewaykey
     <!--NeedCopy-->
    
  • NetScaler ADCからターゲットに接続するためのSNIPを追加します。

     add ns ip 10.102.147.135  255.255.255.0 –type SNIP
     <!--NeedCopy-->
    

GUI を使用した RDP プロキシの設定

  1. NetScaler Gateway]>[ポリシー]に移動し、[ RDP]を右クリックして[ 機能を有効にする]をクリックします。

  2. ナビゲーションペインで [RDP] をクリックします。右側の [ クライアントプロファイル ] タブを選択し、[ 追加] をクリックします。

  3. クライアントプロファイルの名前を入力し、設定します。

    プロフィールの名前を追加

  4. [RDPホスト]フィールドに、RDPプロキシリスナーに解決されるFQDNを入力します。これは通常、NetScaler Gateway アプライアンスのFDQNと同じFQDNです。

  5. 事前共有キー」にパスワードを入力し、 「OK」をクリックします。

    事前共有キーパスワード

  6. サーバプロファイルの名前を入力します。

  7. このプロファイルをバインドするゲートウェイ仮想サーバーの IP アドレスを入力します。

  8. RDP クライアントプロファイルに設定したのと同じ事前共有キーを入力します。[Create] をクリックします。

    事前共有キーのパスワードを再入力

  9. クライアントレスアクセスポータルページでRDPブックマークを追加する場合は、左側で[ NetScaler Gateway]、[ リソース]、[ ブックマーク]の順に展開します。

  10. 右側の [ 追加] をクリックします。

  11. ブックマークに名前を付けます。

  12. URL には、 IP または DNS を使用して rdp: //myrdpServerと入力します。

  13. NetScaler Gateway をリバースプロキシとして使用 ]を選択し、[ 作成]をクリックします。

  14. 要件に従ってブックマークを作成します。

    複数のブックマークを追加する

  15. セッションプロファイルを作成または編集します。[NetScaler Gateway]>[ ポリシー]>[セッション] に移動します。

  16. [セキュリティ] タブで、[ 既定の承認アクション ] を [ 許可] に設定します。または、認可ポリシーを使用してアクセスを制御することもできます。

    デフォルトの認証アクションの設定

  17. [リモートデスクトップ] タブで、前に作成した RDP クライアントプロファイルを選択します。

    RDP クライアントプロファイルの選択

  18. ブックマークを使用する場合は、[ クライアントエクスペリエンス] タブで、[ **クライアントレスアクセス** ] を [ オン] に設定します。

    クライアントレスアクセスを On に設定します。

  19. [ 公開アプリケーション ] タブで、[ICAプロキシ] がオフになっていることを確認します

    ICAプロキシをオフに設定する

  20. ゲートウェイ仮想サーバーを変更または作成します。

  21. [ 基本設定] セクションで、[ 詳細] をクリックします。

    基本設定を設定する

  22. RDP サーバプロファイルリストを使用して、前に作成した RDP サーバプロファイルを選択します。

    RDP サーバープロファイルを使用する

  23. 下にスクロールします。[ ICA のみ ] がオフになっていることを確認します。

    ICAのみをオフに設定する

  24. 証明書をバインドします。

  25. 認証ポリシーをバインドします。

  26. RDP クライアントプロファイルが設定されているセッションポリシー/プロファイルをバインドします。

    バインドセッションポリシー

  27. ブックマークは、NetScaler Gateway 仮想サーバー、または認証、承認、および監査グループにバインドできます。NetScaler Gateway 仮想サーバーにバインドするには、右側の[詳細設定]セクションで、[ 公開アプリケーション]をクリックします。

    [公開アプリケーション] をクリックします。

  28. 左側の [ 公開アプリケーション ] セクションで、[ URL なし] をクリックします。

    URL を設定しない

  29. ブックマークをバインドします。

    ブックマークをバインドする

  30. このNetScaler Gateway 仮想サーバーには[ICAのみ]が指定されていないため、NetScaler Gateway ユニバーサルライセンスが正しく構成されていることを確認してください。左側で、 [NetScaler Gateway] を展開し、[ グローバル設定]をクリックします。

    グローバル設定を設定する

  31. 右側の [ 認証 AAA 設定の変更] をクリックします。

    認証設定の変更

  32. [ 最大ユーザー数] をライセンス制限に変更します。

    最大ユーザー数の設定

  33. DNS を使用して RDP サーバーに接続する場合は、アプライアンスで DNS サーバーが設定されていることを確認します([トラフィック管理] > [DNS] > [ネームサーバー])

    DNS サーバーを構成する

  34. FQDN の代わりに短い名前を使用する場合は、DNS サフィックスを追加します ([トラフィック管理] > [DNS] > [DNS サフィックス])

    FQDN を使用する

  35. ゲートウェイに接続してログオンします。

    ゲートウェイに接続

  36. [ ブックマーク] を構成した場合は、[ ブックマーク] をクリックします。

    ブックマークをクリック

  37. アドレスバーを /rdpProxy/myrdpServerに変更できます。IP アドレス (rdpproxy/192.168.1.50 など) または DNS 名 (/rdpproxy/myserver) を入力できます。

    アドレスバーの変更

  38. ダウンロードした.rdp fileを開きます。

    RDP ファイルのダウンロード

  39. 現在接続しているユーザーを表示するには、[ NetScaler Gateway ポリシー]>[RDP]の順に選択します。右側には [ 接続 ] タブがあります。

    [接続] タブをクリックします。

SSO を無効にするオプション

RDPプロキシを使用したSSO(シングルサインオン)機能は、NetScaler ADCトラフィックポリシーを構成することで無効にできます。これにより、ユーザーは常に資格情報の入力を求められます。SSO が無効になっていると、RDP 強制 (SmartAccess) は機能しません。

例:

add vpn trafficaction <TrafficActionName> HTTP -SSO OFF
<!--NeedCopy-->

トラフィックポリシーは、要件に従って設定できます。次に、2 つの例を示します。

  • すべてのトラフィックに対して SSO を無効にするには、次の手順を実行します。

     add vpn trafficpolicy <TrafficPolicyName>  "url contains rdpproxy" <TrafficActionName>
     <!--NeedCopy-->
    
  • 送信元/宛先 IP/FQDN に基づいて SSO を無効にするには

     add vpn trafficPolicy <TrafficPolicyName>  "HTTP.REQ.URL.CONTAINS("rdpproxy") && CLIENT.IP.SRC.EQ(<IP>)" <TrafficActionName>
     bind vpnvserver rdp -policy <TrafficPolicyName> -priority 10
     <!--NeedCopy-->