この記事では、ブラウザアクセスAnyApp機能を有効にしてテストする方法について説明します。この機能は、RDPやSSHなどの追加プロトコルのサポートを拡張することで、既存のブラウザベースのアクセスソリューションを強化します。この機能は、Any BrowserアプリとEnterprise Browserアプリの両方でサポートされています。
定義
AnyAppNetskope機能名で、RDPやSSHなどの非ウェブアプリケーションをブラウザベースのアクセス経由でサポートするためのものです。
Background
AnyApp機能を有効にすると、ブラウザベースのアクセスを介して、RDPやSSHなどの追加プロトコルのサポートが拡張されます。これはNetskope Client通常、管理されていない環境にはインストールできないため、サードパーティ ユーザー (パートナー、ベンダー、請負業者など) にとって特に便利です。 。 このソリューションでは、リソース設定を含む、パブリッシャー側での追加設定が必要です。詳細については、 「出版社の要件」セクションをご覧ください。
前提条件
- お客様のテナントには、プライベートアプリ用のNetskopeリバースプロキシSAMLアカウントが既に設定されています。
- 十分なリソースを備え、バージョンR120以上であるパブリッシャー(AnyApp専用)。詳細については、 「出版社の要件」セクションをご覧ください。
出版社の要件
設定および ブラウザベースの Access AnyApp 機能を使用するには、これらの要件を注意深く確認し、完全に理解することが重要です。
- ブラウザベースのRDP/SSHアプリケーションには、専用のパブリッシャーセットを割り当てることをお勧めします。
- AnyApp機能をサポートするためには、パブリッシャーをホストするサーバーの規模が適切である必要があります。最大30の同時RDP接続に対応するVMサイジングガイドラインは以下のとおりです。
- 6 CPU cores
- 8GB RAM
- 30GB HDD(利用可能なディスク容量)
ワークフロー
AnyApp 機能を使用するには、次の手順が必要です。
- Publisherをインストールしてください。
- パブリッシャーのリソースをアップグレードします(サイズ変更)。
- AnyApp機能を有効にしてください。
- AnyAppプライベートアプリの定義とポリシーを設定します。
- AnyAppアプリへのアクセス権限を検証します。
Publisherをインストールする
ここでPublisher のインストール手順を実行します。 新しいパブリッシャーを作成して登録します。なお、クラウドベースのデプロイメントの場合、メモリ、CPU、およびHDDは、それぞれのインスタンスの設定時に変更できます。
パブリッシャーリソースのアップグレード(サイズ変更)
Netskopeは、単一のPublisherインスタンスで最大30の同時RDP接続をサポートするために、以下の仕様を推奨しています。
- 6 CPU cores
- 8GB RAM
- 30GB HDD(利用可能なディスク容量)
Important – 要件に合わせてパブリッシャーのサイズを変更するには、このガイドに従ってください。
Note SSHはリソースをあまり消費しないため、追加のリソースは必要ありません。
Note – 迅速なテストのため、また お客様がパブリッシャーインスタンスごとに 30 を超える同時 RDP 接続を必要としない場合、お客様の特定の要件に基づいてサイジングを選択することをお勧めします。 エンドツーエンドの接続性を迅速にテストするには、基本となるパブリッシャーサイズ(デフォルト値)でも十分ですが、パフォーマンスに影響が出る可能性があります。
Note 同時接続数が30を超える場合は、パブリッシャーの数を増やすことをお勧めします。
Enable AnyApp
テナントに対して、ブラウザベースのAnyAppアクセス機能フラグが有効になっていることを確認してください。
- Publisher Wizardの設定メニューで「 ブラウザアクセス AnyApp」設定 を選んでください。

- Choose 1 for Enable Browser Access AnyApp.
- AnyAppを有効にした後に表示されるウィザードメニューで、AnyAppが有効になっていることを確認してください(ブラウザアクセスAnyApp:有効)。
- AnyAppのDockerコンテナが実行されていることをさらに確認するには、7を選択して終了し、 docker psコマンドを実行して、 guacamole-frontend 、 guacamole-backendコンテナが実行されていることを確認してください。
例えば、
Configuration menu: 1. Upgrade 2. Network settings 3. Syslog settings 4. Troubleshooter 5. Log settings 6. Browser Access AnyApp settings 7. Exit 6 Browser Access AnyApp: Disabled Configuration menu: 1. Enable Browser Access AnyApp 2. Return to previous menu 1 The system does not meet the requirements: The number of CPU(2) is below the recommendation(6). The RAM size(3.900000GB) is below the recommendation(8.000000GB). The disk space(12.000000GB) is below the recommendation(30.000000GB). The system does not meet the requirements for Browser Access, do you want to continue [yes/no] yes guacamole-frontend Pulling guacd Pulling guacd Pulled guacamole-frontend Pulled Container guacamole-backend Creating Container guacamole-backend Created Container guacamole-frontend Creating Container guacamole-frontend Created Container guacamole-backend Starting Container guacamole-backend Started Container guacamole-frontend Starting Container guacamole-frontend Started Restarting publisher... Publisher information: Version: 120.0.0.8519 . . <Output omitted> . . Browser Access AnyApp: Enabled Update status: System updates available. Publisher update available. Configuration menu: 1. Upgrade 2. Network settings 3. Syslog settings 4. Troubleshooter 5. Log settings 6. Browser Access AnyApp settings 7. Exit 7 ubuntu@anyapphost:~$ ubuntu@anyapphost:~$ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 2cd4a332e3ff netskopeprivateaccess/ba_any_app_fe_test:latest "catalina.sh run" 2 hours ago Up 2 hours guacamole-frontend 19d7a549be9e guacamole/guacd:1.5.4 "/bin/sh -c '/opt/gu…" 2 hours ago Up 2 hours (healthy) guacamole-backend cdb9d9fedd02 new_edge_access:latest "/bin/bash -l automa…" 2 hours ago Up 2 hours unruffled_meninsky ubuntu@anyapphost:~$
さらに、AnyAppが有効になっている場合、 NetskopeウェブのUIでは、パブリッシャーUIセクションにブラウザベースのアクセスAnyAppが「接続済み」と表示されます。
AnyApp対応のパブリッシャーでは、以下に示すようにフィルタリング機能を利用できます。

AnyAppプライベートアプリの定義とポリシーを設定する
テナントに対して、ブラウザベースのAnyAppアクセス機能フラグが有効になっていることを確認してください。
- RDP/SSHブラウザベースアクセスアプリを作成します。これは、既存のhttp/https対応ブラウザベースアクセスアプリと同様です。この機能は、Any BrowserアプリとEnterprise Browserアプリの両方でサポートされています。
- Settings > Security Cloud Platform > App Definitionsに移動し、「プライベート アプリ セグメント」タブを選択します。
- New Application Segmentをクリックするか、既存のものを編集してください。 Browser Select 。
- 宛先アドレスを入力し、ドロップダウンリストからプロトコルを選択してください。
- AnyAppが有効になっているパブリッシャーSelect 。
- アプリケーションを提供するパブリッシャーSelect 。 どのパブリッシャーがAnyAppを有効にしているかを示す視覚的なヒントはあるものの、RDP/SSH用のAnyAppパブリッシャーの選択を制限するUI検証機能はありません。AnyApp以外のパブリッシャーが選択され、RDP/SSHトラフィックがそのパブリッシャーに送信された場合、トラフィックは失敗しますのでご注意ください。

- Saveをクリックしてください。
- 要件に基づいて、ユーザーまたはグループごとにRDP/SSHアプリの許可/ブロックを含むリアルタイムポリシーを作成します。詳細については、こちらをご覧ください。
AnyAppアプリへのアクセスを検証する
RDPアプリへのアクセスでは、ブラウザベースのアクセスで認証に成功すると、ログイン画面が表示されます(下図参照)。この時点で、RDP サーバーにアクセスするにはクレデンシャルを入力する必要があります。
Note 1: RDP アプリケーションへのアクセスにおけるデフォルトの RDP 認証方法はANYです。対話型認証のみ ユーザー名とパスワードがサポートされています。 詳細については、「追加事項」をご覧ください。
Note 2ログインにActive Directory(AD)ドメインが必要な場合は、専用のドメインフィールドに入力してください。
Note 3Azure ADに参加しているマシンにログインする場合は、[ユーザー名] フィールドにAzureAD\user@domain.comを入力し、[ドメイン] フィールドを空のままにします。これは、 [リモート Microsoft Entra 参加デバイスへの接続]で推奨されているとおりです。Azure AD 認証には使うTLSもお勧めします。 追加注意事項に記載されている認証オプションを確認してください。
SSHアプリへのアクセスでは、ブラウザベースのアクセスによる認証が成功すると、ログイン画面が表示されます(下のスクリーンショットを参照)。この時点で、SSH サーバーにアクセスするにはクレデンシャルを入力する必要があります。

Note対話型認証のみ ユーザー名とパスワードによる認証がサポートされています。 詳細については、「追加事項」をご覧ください。
(オプション)管理者がプロビジョニングしている場合、RDP および SSH ブラウザベースのアクセス アプリケーションにも、ブラウザ アクセス ユーザー ポータル経由でアクセスできます。

AnyAppのアップデートとメンテナンス
パブリッシャーの自動更新を有効にすると、AnyAppサービスがパブリッシャーの更新と同時に更新されることが保証されます。パブリッシャーの自動更新を有効にすることをお勧めします。
AnyAppのパブリッシャー自動アップグレードに関するエラーコードは、こちらで確認できます。
トラブルシューティング
パブリッシャーでAnyAppを有効にするオプションが表示されません
- 設定ファイル(nsconfig.json)を確認してください。パブリッシャーで機能フラグが enable_non_web_app_browser_access(下記参照)「1」に設定されています。設定されていない場合は、Netskopeサポートチームにお問い合わせください。
nsconfig.jsonファイルはresources/ディレクトリにあります。

- AnyApp機能フラグを有効にした後:
- 更新には最大60分かかる場合があります。
- または、変更をすぐに反映させるには、パブリッシャーを再起動してください。
パブリッシャーのAnyAppの検証が有効になっている
- docker ps
- guacamole-frontendとguacamole-backendが起動して動作していることを確認してください。

グアカモレのログを取得する
- docker logs -t guacamole-frontend
- docker logs -t guacamole-backend
パブリッシャーがAnyAppへのリクエストを受信したかどうかを確認する
パブリッシャーのログを確認してください:logs/agent.txt。
New L4 connection {clientId}:{connId}, dest guacamole-frontend:8080
[anyapp-publisher:2024-05-30 06:52:39.010 +00:00] [info] agenthandler.cpp:669:processSendToServer():0x7f31598ed500 New L4 connection 9yXrO0BPTlMp:26, dest guacamole-frontend:8080
AnyAppアプリのアクセシビリティに関する問題
- ブラウザからのアラートは便利です。
- 以下に例を示します。
- SSH: クライアント認証エラー (ユーザー名またはパスワードが間違っています)

- RDP: クライアント認証エラー(ユーザー名またはパスワードが間違っています)

- RDP: UPSTREAM_NOT_FOUND (接続タイムアウト) パブリッシャーからプライベートアプリへの接続を確認してください。

- その他のエラーコードについては、こちらをご覧ください。
- SSH: クライアント認証エラー (ユーザー名またはパスワードが間違っています)
補足事項
- 中国のパブリッシャーはAnyAppではサポートされていません。
- RDPのデフォルトの認証方法は「Any」です。TLSやNLAなどの他の認証方法を有効にするには、以下のスクリーンショットを参照してください。
追加の認証方法の一般的な使用例:
- TLS: AD に参加している Windows PC と互換性があります。または、ローカル管理者アクセスの場合のように、ユーザーを DOMAIN\User の形式で指定する必要があります。
- ANY:XRDP(Linuxベースのサーバー)と互換性があります。
- RDPセッションは、複数のキーボードレイアウトをサポートするようになりました。 ユーザーはログインページで好みのキーボード言語を選択できますが、選択したレイアウトがクライアントとリモートシステムの両方のキーボード設定と一致していることを確認する必要があります。


-
既存のテナントでは、コピー&ペースト(クリップボード)機能は引き続きブロックされています。新しいテナントでは、デフォルトで完全なクリップボードが有効になります。 これを変更するには、 Netskopeサポートをご利用ください。 Guacamoleの制限により、クリップボード機能は現在、Google ChromeやMicrosoft EdgeなどのChromiumベースのブラウザでのみサポートされています。
- AnyAppのデフォルトのセッションタイムアウトは、SSH接続とRDP接続の両方で60分(1時間)です。この期間内にユーザー操作やSSH/RDPサーバーからの画面更新がない場合、セッションは切断されます。ただし、継続的な操作がある場合、アクティブな画面更新によってタイムアウトが防止されるため、セッションは切断されません。さらに、タイムアウトが15秒に設定されたキープアライブ機構があり、キープアライブメッセージは0.5秒ごとに送信されます。ネットワークの問題が発生した場合、応答がないまま15秒経過するとセッションは閉じられます。この15秒間の間に、ブラウザは30個のpingメッセージを送信します。
- SSHアクセスは証明書ベースの認証をサポートしていません。
- SSHアクセスは、多要素認証(MFA)または二段階認証(2FA)をサポートしていません。
- モバイルプラットフォームからのアクセスは公式にはサポートされていません。


