リモート セッションを監視して管理する

完了

このユニットでは、診断ログを有効にして、リモート セッションを監視することにより、リモート セッションを管理する方法を学習します。

監査ログを生成するように診断設定を構成する

Azure Bastion では、リモート ユーザーのセッションに関する情報をログに記録できます。 ログを調べて、誰が、いつ、どこから、どのワークロードに接続したかに加え、関連する他のログ情報を確認できます。

これらのログを生成するには、Azure Bastion で診断設定を構成する必要があります。 ログがストレージ アカウントにストリーミングされるまでに数時間かかることがあります。 以下のセクションでは、後で自分のサブスクリプションで試せるように、Azure Bastion の診断設定を構成する方法を示します。

Azure Bastion の診断を有効にする

Azure Bastion リソースの [監視] で、診断設定を追加できます。 ログのストリーミング先のストレージ アカウントが必要です。 まだストレージ アカウントを持っていない場合は、自分のサブスクリプションでこれらの手順を試す前に 1 つ作成します。

  1. Azure portal で、[Bastion] を検索または選択します。

  2. Azure Bastion リソースを選択します。

  3. [監視][診断設定] を選択します。

  4. [診断設定の追加] を選択します。

    Screenshot that shows the Add diagnostic settings link within the Diagnostics settings page.

  5. [診断設定の名前] に名前を入力します。

  6. [ログ] で、[Bastion Audit Logs] (Bastion 監査ログ) のチェック ボックスをオンにします。

  7. [宛先の詳細] で、[Log Analytics への送信][ストレージ アカウントへのアーカイブ] を選択します。

  8. 場所、サブスクリプション、ストレージ アカウントは自動的に設定されます。 ストレージ アカウントが Azure Bastion リソースと同じリージョンにあることを確認します。

    Screenshot that shows the Diagnostics setting page filled out.

  9. [保存] を選択します。

  10. 保存が完了したら、ページを閉じます。

診断ログを表示する

診断ログがストレージ アカウントに表示されるまで数時間かかります。 ストレージ アカウントの [コンテナー] でそれを見つけることができます。

Screenshot of a storage account with a container called insights-logs-bastionauditlogs.

リソース階層フォルダーをドリルダウンして、Azure Bastion ホスト ファイルを取得します。

Screenshot of the insights logs for Azure Bastion that shows the folder location level is at the Azure Bastion host resource.

年 (y=)、月 (m=)、日 (d=)、時 (h=)、分 (m=) とフォルダーをドリルダウンし続けて、特定の期間の診断ログ データを見つけます。

Screenshot of the insights logs for Azure Bastion that shows the J S O N file for a specific time period.

.json ファイルをダウンロードして、セッションの詳細を表示します。 ファイルを開くと、次の例のように見えます。 この例では、操作の種類、ユーザー名、クライアント IP アドレスなどの情報を確認できます。

{ 
"time":"2020-10-22T23:26:00.697Z",
"resourceId":"/SUBSCRIPTIONS/<subscripionID>/RESOURCEGROUPS/MYBASTION/PROVIDERS/MICROSOFT.NETWORK/BASTIONHOSTS/MYBASTION-BASTION",
"operationName":"Microsoft.Network/BastionHost/connect",
"category":"BastionAuditLogs",
"level":"Informational",
"location":"westus2",
"properties":{ 
   "userName":"<username>",
   "userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36",
   "clientIpAddress":"131.107.159.86",
   "clientPort":24039,
   "protocol":"ssh",
   "targetResourceId":"/SUBSCRIPTIONS/<subscripionID>/RESOURCEGROUPS/MYBASTION/PROVIDERS/MICROSOFT.COMPUTE/VIRTUALMACHINES/LINUX-KEY",
   "subscriptionId":"<subscripionID>",
   "message":"Successfully Connected.",
   "resourceType":"VM",
   "targetVMIPAddress":"172.16.1.5",
   "tunnelId":"<tunnelID>"
},
"FluentdIngestTimestamp":"2020-10-22T23:26:00.0000000Z",
"Region":"westus2",
"CustomerSubscriptionId":"<subscripionID>"
}

現在のリモート セッションを管理する

Azure Bastion セッションの監視を行うと、どのユーザーがどの仮想マシンに接続されているかを表示できます。 ユーザーの接続元の IP、接続している時間、接続した日時が表示されます。 進行中のセッションを選択し、セッションを強制的に切断して、セッションからユーザーを切断することができます。

Screenshot of the Azure Bastion sessions page with the delete option selected for one of the two sessions.

次のユニットでは、リモート セッションを管理する方法を説明します。