Amzon WorkSpacesに接続できない場合に確認する箇所

AWS

こんにちわますのです。
Amazon WorkSpacesのクライアントソフトをver3にアップデートしてから接続が調子悪い…。そんな状態に陥りました。
通信要件確認してね!とサポートから言われてプロキシやファイヤウォールの設定を見直したのですが改善に至らず。

事象と原因

クライアントソフトのverを3.0になったらネットワーク設定でエラーが出ることが多々出てしまうことが。
社内環境以外であれば接続に異常が出なかったので、社内ネットワークの設定が足りてないことが分かりました。
主な原因
・インターネットオプションでプロキシサーバを指定していた
・プロキシサーバで認証有効化していた
今までのver2のクライアントなら、クライアントアプリ内のプロキシ設定を指定しなければプロキシサーバ経由になっていなかったのです。
ver3になってからインターネットオプションの設定を見ているように見えるのです。
それらを特定するまでに確認した場所のメモになります。

高度なログ記録を有効化してWorkSpacesを起動する

やはりログは重要ですね。WorkSpacesのトラブルシューティングのページにも記載されておりました。
Amazon WorkSpaces に関するトラブルシューティング

WorkSpacesを通常起動する際もログを取得するようになっていますが、細かいログまで取る場合は別途コマンド起動が必要です。

Windowsの場合

WorkSpacesログ保存パス

%LOCALAPPDATA%\Amazon Web Services\Amazon WorkSpaces\logs

高度なログを取得する起動方法

  1. コマンドプロンプトアプリを開きます。
  2. 以下のコマンドを実行して WorkSpaces クライアントを起動します。
    cd "C:\Program Files (x86)\Amazon Web Services, Inc\Amazon WorkSpaces"
  3. ネットワークのステータスチェックや接続不可の事象を再現させます。
  4. 「%LOCALAPPDATA%\Amazon Web Services\Amazon WorkSpaces\logs」に接続エラーが出ていないかチェックします。

macOSの場合

WorkSpacesログ保存パス

~/Library/”Application Support”/”Amazon Web Services”/”Amazon WorkSpaces”/logs

高度なログを取得する起動方法

  1. ターミナルを開きます。
  2. 以下のコマンドを実行して WorkSpaces クライアントを起動します。
    open -a workspaces --args -l3

     

  3. ネットワークのステータスチェックや接続不可の事象を再現させます。
  4. 「~/Library/”Application Support”/”Amazon Web Services”/”Amazon WorkSpaces”/logs」に接続エラーが出ていないかチェックします。

ログを確認する

あとは取得したログから、どこの接続でエラーが出ているかを確認します。

※ログより抜粋※
2020-07-24T06:18:45.690Z { Version: “3.0.7.1473” }: [DBG] Setting the Update FeedURL URL to https://d2td7dqidlhjx7.cloudfront.net/prod/nrt/windows/WorkSpacesAppCast.xml
2020-07-24T06:18:46.998Z { Version: “3.0.7.1473” }: [ERR] Error while making a request to : https://connectivity.amazonworkspaces.com/. Message: HttpClient – Unknown Network error
2020-07-24T06:18:47.000Z { Version: “3.0.7.1473” }: [DBG] Error getting internet health check. Result was: HttpClient – Unknown Network error
2020-07-24T06:18:47.192Z { Version: “3.0.7.1473” }: [ERR] Error while making a request to : https://ws-client-service.ap-northeast-1.amazonaws.com/configuration/GetLocalizationAssets. Exception: WorkSpacesClient.Common.Infrastructure.ExceptionHandler.WorkspacesClientException: HttpClient – Unknown Network error
—> System.Net.Http.HttpRequestException: 対象のコンピューターによって拒否されたため、接続できませんでした。
—> System.Net.Sockets.SocketException (10061): 対象のコンピューターによって拒否されたため、接続できませんでした。
at System.Net.Http.ConnectHelper.ConnectAsync(String host, Int32 port, CancellationToken cancellationToken)
— End of inner exception stack trace —
ログから、以下の2つのURLで「ERR」となっていそうだとあたりがつけられます。
  • https://connectivity.amazonworkspaces.com/
  • https://ws-client-service.ap-northeast-1.amazonaws.com/configuration/GetLocalizationAssets

接続の確認に利用する「https://connectivity.amazonworkspaces.com/」や、WorkSpacesハンドラーのURLでネットワークエラーとなっているようです。
ファイヤウォール上にブロックログが見当たらず、プロキシサーバに疑いの目を持った次第です。
「connectivity.amazonworkspaces.com」と「*.amazonaws.com」のプロキシ認証除外設定を試したところ無事に接続できるようになった状態でした。

ちなみに「*.amazonaws.com」だけ設定した場合、接続自体に問題は出ませんでした。
クライアントアプリ⇔WorkSpacesの接続確認は取れずエラーが出ていましたが、あくまでもアプリ間との通信のみチェックしているようで、WorkSpacesサービス自体の接続は「*.amazonaws.com」で実施していそうです。

逆に「connectivity.amazonworkspaces.com」のみ設定した場合は相変わらずWorkSpacesへの接続は不可だったのです。

おまけ:WorkSpacesクライアントソフトのネットワークステータスに異常がない場合

今回はクライアントアプリ側でエラーが出ていた場合の紹介でした。
ネットワークエラーが出ていない場合で接続不可となる際は、WorkSpaces内のサービスが落ちている可能性があります。
ServerWorksブログ:WorkSpace の起動中にエラーが発生しました。もう一度試してください。

RDPなどでWorkSpacesに接続して、WorkSpaces環境内の「PCoIP Standard Agent for Windows」が起動しているか確認してみましょう。

確かにマスター作成した時に、このサービス停止して作り直した覚えがあります…。
当時はRDP接続出来るとか考えなかったので知っていると幸せになれることがあるかもですね。

最新情報をチェックしよう!