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

完了

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

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

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

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

Azure Bastion の診断を有効にする

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

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

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

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

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

    [診断設定] ページ内の [診断設定を追加する] リンクを示すスクリーンショット。

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

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

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

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

    指定を終えた [診断設定] ページを示すスクリーンショット。

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

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

診断ログを表示する

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

insights-logs-bastionauditlogs という名前のコンテナーが表示されたストレージ アカウントのスクリーンショット。

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

フォルダーの場所のレベルが Azure Bastion ホスト リソースであることを示している、Azure Bastion の分析情報ログのスクリーンショット。

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

特定の期間の JSON ファイルを示している、Azure Bastion の分析情報ログのスクリーンショット。

.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、接続している時間、接続した日時が表示されます。 進行中のセッションを選択し、セッションを強制的に切断して、セッションからユーザーを切断することができます。

2 つのセッションのうち、1 つで削除オプションが選択されている Azure Bastion セッション ページのスクリーンショット。

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