ラボ回答キー: Azure VM での Windows Server のデプロイと構成

メモ: このラボをご自分のペースでクリックして進めることができる、 ラボの対話型シミュレーション が用意されています。 対話型シミュレーションとホストされたラボの間に若干の違いがある場合がありますが、示されている主要な概念とアイデアは同じです。

演習 1: Azure VM デプロイ用の Azure Resource Manager (ARM) テンプレートの作成

タスク 1: Azure サブスクリプションに接続し、Microsoft Defender for Cloud のセキュリティ強化を有効にする

このタスクでは、Azure サブスクリプションに接続し、Microsoft Defender for Cloud のセキュリティ強化機能を有効にします。

  1. SEA-ADM1 に接続してから、必要に応じて、講師から提供された資格情報でサインインします。
  2. SEA-ADM1 で Microsoft Edge を起動して https://portal.azure.com にある Azure portal を開き、このラボで使用するサブスクリプションの所有者ロールを持つユーザー アカウントの資格情報を使用してサインインします。

: Azure サブスクリプションで Microsoft Defender for Cloud を既に有効にしている場合は、このタスクの残りのステップをスキップし、次に直接進みます。

  1. Azure portal のツール バーにある [リソース、サービス、ドキュメントの検索] テキスト ボックスで、「Microsoft Defender for Cloud」を検索して選択します。
  2. [Microsoft Defender for Cloud | 使用開始] ページで、[アップグレード] を選択し、[エージェントのインストール] を選択します。

タスク 2: Azure portal を使用して ARM テンプレートとパラメーター ファイルを生成する

このタスクでは、Azure portal を使用してリソース グループを作成し、そのリソース グループにディスクを作成します。

  1. SEA-ADM1 で Azure portal のツール バーにある [リソース、サービス、ドキュメントの検索] テキスト ボックスで、「仮想マシン」を検索して選択します。 [仮想マシン] ページで、 [+ 作成] を選択し、 [仮想マシン] を選択します。
  2. [仮想マシンの作成] ページの [基本] タブで、次の設定を指定し、他のすべての設定は既定値のままにしますが、デプロイは行いません。

    設定
    サブスクリプション このラボで使用する Azure サブスクリプションの名前。
    リソース グループ 新しいリソース グループの名前 AZ800-L0601-RG
    仮想マシン名 az800L06-vm0
    リージョン Azure 仮想マシンをプロビジョニングできる Azure リージョンの名前を使用します
    可用性のオプション インフラストラクチャ冗長は必要ありません
    Image Windows Server 2022 Datacenter: Azure Edition - Gen2
    Azure Spot 割引で実行する いいえ
    サイズ Standard_D2s_v3
    ユーザー名 Student
    パスワード Pa55w.rd1234
    パブリック受信ポート なし
    既存の Windows Server ライセンスを使用しますか Off
  3. [次へ: ディスク >] を選択し、「仮想マシンの作成」ページの [ディスク] タブで、次の設定を指定します。他のすべての設定は既定値のままにします。

    設定
    OS ディスクの種類 Standard HDD
  4. [次へ: ネットワーク >] を選択し、 [仮想マシンの作成] ページの [ネットワーク] タブで、 [仮想ネットワーク] テキスト ボックスの後にある [新規作成] ハイパーリンクを選択します*。
  5. [仮想ネットワークの作成] ページで、次の設定を指定し、他のすべての設定を既定値のままにして、[OK] を選択します。

    設定
    名前 az800L06-vnet
    アドレス範囲 10.60.0.0/20
    サブネット名 subnet0
    サブネット範囲 10.60.0.0/24
  6. 仮想マシンの作成」ページに戻り、[ネットワーク] タブで、次の設定を指定します。他のすべての設定は既定値のままにします。

    設定
    パブリック IP なし
    NIC ネットワーク セキュリティ グループ None
    高速ネットワークを有効にする Off
    負荷分散のオプション なし
  7. [次へ: 管理 >] を選択し、すべての設定を既定値のままにします。

  8. [次へ: 監視 >] を選択し、 [仮想マシンの作成] ページの [管理] タブで、次の設定を指定します。他のすべての設定は既定値のままにします。

    設定
    ブート診断 マネージド ストレージ アカウントで有効にする (推奨)
  9. [次へ: 詳細設定 >] を選択し、[仮想マシンの作成] ページの [詳細設定] タブで、使用可能な設定を変更せずに確認し、[確認と作成] を選択します。

    : 仮想マシンは作成しないでください。 この目的で、自動生成されたテンプレートを使用します。

タスク 3: Azure portal から ARM テンプレートとパラメーター ファイルをダウンロードする

  1. Azure portal の「仮想マシンの作成」ページで、[オートメーション用のテンプレートをダウンロードする] を選択します。
  2. テンプレート」ページで [ダウンロード] を選択します。
  3. template.zip の横にある省略記号ボタンを選択し、ポップアップ メニューで [フォルダーに表示] を選択します。 これにより、[ダウンロード] フォルダーの内容が表示されたエクスプローラーが開きます。
  4. エクスプローラーで、template.zip をコピーし、C:\ ディレクトリに移動して、Lab06files という名前の新しいフォルダーを作成し、そのフォルダーを入力して template.zip ファイルを貼り付けます。
  5. テンプレート」ページから「仮想マシンの作成」ページに戻り、デプロイを完了せずに閉じます。

演習 2: VM 拡張機能ベースの構成を含むように ARM テンプレートを変更する

タスク 1: Azure VM デプロイ用の ARM テンプレートとパラメーターのファイルを確認する

  1. SEA-ADM1 で、エクスプローラーを開始し、C:\Lab06files フォルダーを参照します。
  2. template.zip ファイルの内容を同じフォルダーに抽出します。
  3. メモ帳で template.json ファイルを開き、内容を確認します。 メモ帳ウィンドウは開いたままにしておきます。
  4. エクスプローラーから、メモ帳で C:\Lab06files\parameters.json ファイルを開き、その内容を確認します。
  5. parameters.json ファイルが表示されているメモ帳ウィンドウを閉じます。

タスク 2: 既存のテンプレートに Azure VM 拡張機能セクションを追加する

  1. SEA-ADM1template.json ファイルの内容が表示されているメモ帳ウィンドウで、 "resources": [ 行の直後に次のコードを挿入します。

    :intellisense 行ごとにコードを貼り付けるツールを使用している場合は、検証エラーを引き起こす余分な角かっこが追加される可能性があります。 コードを最初にメモ帳に貼り付け、次に JSON ファイルに貼り付けることができます。

       {
          "type": "Microsoft.Compute/virtualMachines/extensions",
          "name": "[concat(parameters('virtualMachineName'), '/customScriptExtension')]",
          "apiVersion": "2018-06-01",
          "location": "[resourceGroup().location]",
          "dependsOn": [
             "[concat('Microsoft.Compute/virtualMachines/', parameters('virtualMachineName'))]"
          ],
          "properties": {
             "publisher": "Microsoft.Compute",
             "type": "CustomScriptExtension",
             "typeHandlerVersion": "1.7",
             "autoUpgradeMinorVersion": true,
             "settings": {
                   "commandToExecute": "powershell.exe Install-WindowsFeature -name Web-Server -IncludeManagementTools && powershell.exe remove-item 'C:\\inetpub\\wwwroot\\iisstart.htm' && powershell.exe Add-Content -Path 'C:\\inetpub\\wwwroot\\iisstart.htm' -Value $('Hello World from ' + $env:computername)"
             }
          }
       },
    

    注: コード スニペットがスクリプトの残りの部分と一致していることを確認してください。

  2. 変更を保存して、ファイルを閉じます。

演習 3: ARM テンプレートを使用して Windows Server を実行している Azure VM をデプロイする

タスク 1: ARM テンプレートを使用して Azure VM をデプロイする

  1. SEA-ADM1 で、Azure portal が表示されているブラウザー ウィンドウに切り替えます。
  2. Azure portal のツール バーの [リソース、サービス、ドキュメントの検索] テキスト ボックスで、「カスタム テンプレートのデプロイ」を検索して選択します。
  3. カスタム デプロイ」ページで、[エディターで独自のテンプレートを作成する] を選択します。
  4. テンプレートの編集」ページで、[ファイルの読み込み] を選択し、前の演習で編集したテンプレート ファイル template.json をアップロードして、[保存] を選択します。
  5. カスタム デプロイ」ページで、[パラメーターの編集] を選択します。
  6. パラメーターの編集」ページで、[ファイルの読み込み] を選択し、前の演習で確認したパラメーター ファイル parameters.json をアップロードして、[保存] を選択します。
  7. カスタム デプロイ」ページに戻り、次の設定を指定して、その他の設定は既定値のままにします。

    設定
    サブスクリプション このラボで使用している Azure サブスクリプションの名前
    リソース グループ AZ800-L0601-RG
    リージョン Azure VM をプロビジョニングできる Azure リージョンの名前
    管理パスワード Pa55w.rd1234
  8. [確認と作成] を選択し、次に [作成] を選択します。

    : デプロイには約 10 分かかります。

  9. デプロイが正常に完了したことを確認します。

タスク 2: Azure VM のデプロイの結果を確認する

  1. Azure portal のツール バーの [リソース、サービス、ドキュメントの検索] テキスト ボックスで、「リソース グループ」を検索して選択します。
  2. リソース グループ」ページで、[AZ800-L0601-RG] エントリを選択します。
  3. AZ800-L0601-RG ページの [概要] ページで、Azure VM az800L06-vm0 が含まれるリソースのリストを確認します。
  4. リソースの一覧で、Azure VM [az800L06-vm0] エントリを選択します。
  5. az800L06-vm0 ページの [設定] タブで、[拡張機能 + アプリケーション] を選択し、拡張機能の一覧で customScriptExtension が正常にプロビジョニングされていることを確認します。
  6. AZ800-L0601-RG のページに戻り、[設定] セクションで [デプロイ] を選択します。
  7. AZ800-L0601-RG | デプロイ」ページで、[Microsoft.Template] リンクを選択します。
  8. [Microsoft.Template | 概要] ページで、[テンプレート] を選択します。これは、デプロイに使用したテンプレートと同じであることに注意してください。

演習 4: Windows Server を実行している Azure VM への管理アクセスの構成

タスク 1: Azure Microsoft Defender for Cloud の状態を確認する

  1. Azure portal のツール バーにある [リソース、サービス、ドキュメントの検索] テキスト ボックスで、「Microsoft Defender for Cloud」を検索して選択します。
  2. Microsoft Defender for Cloud の [概要] ページで、左側の垂直メニューの [管理] セクションの、[環境設定] を選択します。
  3. [環境設定] ページで、Azure サブスクリプションを表すエントリを選択します。
  4. [設定 | Defender プラン] ページで、 [Microsoft Defender for Cloud プランをすべて有効にする] タイルが選択されていることを確認し、上部の [設定と監視] を選択します。
  5. [設定と監視] ページの拡張機能の一覧で、 [Log Analytics エージェント/Azure Monitor エージェント] エントリの右側にある [構成の編集] リンクを選択します。
  6. [自動プロビジョニング構成]ワークスペースの選択で、既定のワークスペース エントリが選択されていることを確実にし、 [適用] を選択し、 [設定と監視] ページに戻り、 [続行] を選択します。
  7. [設定 | Defender プラン] ページで、 [保存] を選択します。

タスク 2:Just-In-Time VM アクセスの設定を確認する

  1. Microsoft Defender for Cloud の [概要] ページに戻り、[クラウド セキュリティ] セクションで、[ワークロードの保護] を選択します。
  2. [Microsoft Defender for Cloud | ワークロードの保護] ページで、 [Just In Time VM アクセス] を選択します。
  3. [Just In Time VM アクセス] ページで、[構成済み][未構成]、および [サポート対象外] のタブを確認します。

    : 新しくデプロイされた VM が [サポート対象外] タブに表示されるまで、最大で 24 時間かかる場合があります。待機するよりも、次の演習に進んでください。

演習 5: Azure VM での Windows Server のセキュリティの構成

タスク 1: NSG を作成して構成する

  1. Azure portal のツール バーの [リソース、サービス、ドキュメントの検索] テキスト ボックスで、「ネットワーク セキュリティ グループ」を検索して選択します。
  2. [ネットワーク セキュリティ グループ] ページで、 [+ 作成] を選択します。
  3. [ネットワーク セキュリティ グループの作成] ページの [基本] タブで、以下の設定を指定します (それ以外は既定値のままにしておきます)。

    設定
    サブスクリプション このラボで使用している Azure サブスクリプションの名前
    リソース グループ AZ800-L0601-RG
    名前 az800L06-vm0-nsg1
    リージョン Azure VM az800L06-vm0 をプロビジョニングした Azure リージョンの名前
  4. [ネットワーク セキュリティ グループの作成] ページの [基本] タブで、[確認と作成] を選択し、[作成] を選択します。
  5. Azure portal で AZ800-L0601-RG のページに戻り、リソースの一覧で、新しく作成されたネットワーク セキュリティ グループ az800L06-vm0-nsg1 を表すエントリを選択します。
  6. az800L06-vm0-nsg1 のページで、既定の受信および送信のセキュリティ規則の一覧を確認し、[設定] セクションで [受信セキュリティ規則] を選択します。
  7. [az800L06-vm0-nsg1 | 受信セキュリティ規則] ページで、[+ 追加] を選択します。
  8. [受信セキュリティ規則の追加] ページで、次の設定を指定し、それ以外はすべて既定値のままにして、[追加] を選択します。

    設定
    source [任意]
    ソース ポート範囲 *
    宛先 [任意]
    サービス HTTP
    アクション 許可
    Priority 300
    名前 AllowHTTPInBound

タスク 2: Azure VM への受信 HTTP アクセスを構成する

  1. Azure portal のツール バーの [リソース、サービス、ドキュメントの検索] テキスト ボックスで、パブリック IP アドレスを検索して選択します。
  2. [パブリック IP アドレス] ページで、[+ 作成] を選択します。
  3. [パブリック IP アドレスの作成] ページの [基本] タブで、次の設定を指定します (他の設定は既定値のままにします)。

    設定
    サブスクリプション このラボで使用している Azure サブスクリプションの名前
    リソース グループ AZ800-L0601-RG
    Name az800l06-vm0-pip1
    リージョン Azure VM az800l06-vm0 をプロビジョニングした Azure リージョンの名前
    SKU Standard
  4. [パブリック IP アドレスの作成] ページの [基本] タブで、[確認と作成] を選択し、[作成] を選択します。
  5. デプロイが正常に完了したことを確認します。
  6. Azure portal で AZ800-L0601-RG のページに戻り、リソースの一覧で、Azure VM az800l06-vm0 を表すエントリを選択します。
  7. az800l06-vm0 ページの [ネットワーク] メニューで、[ネットワーク設定] を選択します。
  8. az800l06-vm0 | ネットワーク設定 ページで、az800l06-vm0 にアタッチされているネットワーク インターフェイスを示すリンクを選択します。
  9. ネットワーク インターフェイスのプロパティを表示しているページの左側にある垂直メニューの [設定] セクションで、[ネットワーク セキュリティ グループ] を選択します。
  10. [ネットワーク セキュリティ グループ] ページで、ドロップダウン リストから [az800l06-vm0-nsg1] を選択し、[保存] を選択します。
  11. ネットワーク インターフェイスのプロパティが表示されたページに戻り、[IP 構成] を選択して、[ipconfig1] エントリを選択します。
  12. ipconfig1 ページの [パブリック IP アドレス] セクションで、[パブリック IP アドレスを関連付ける] ボックスを選択して、[パブリック IP アドレス] ドロップダウン リストで az800l06-vm0-pip1 を選択します。
  13. ipconfig1 のページで、[保存] を選択します。
  14. ネットワーク インターフェイスのプロパティが表示されたページに戻り、[概要] を選択します。 インターフェイスに割り当てられているパブリック IP アドレスの値を確認します。
  15. ブラウザーで別のタブを開いてその IP アドレスに移動し、“Hello World from az800L06-vm0” が表示された Web ページが開くことを確認します。
  16. ラボ コンピューターからリモート デスクトップ アプリを起動し、同じ IP アドレスに接続します。 接続に失敗することを確認します。

    : Azure VM は現在、TCP ポート 3389 経由でインターネットからアクセスできないので、これは想定されています。 TCP ポート 80 経由でのみアクセスできます。

タスク 3: Azure VM の JIT 状態の再評価をトリガーする

: このタスクは、Azure VM の JIT 状態の再評価をトリガーするために必要です。 既定では、これには最大 24 時間かかる場合があります。

  1. Azure portal で AZ800-L0601-RG のページに戻り、リソースの一覧から Azure VM az800L06-vm0 を表すエントリを選択します。
  2. az800L06-vm0 ページの [設定] セクションで、[構成] を選択します。
  3. [az800L06-vm0 | 構成] ページで [Just-In-Time VM アクセスを有効にする] を選択し、 [Microsoft Defender for Cloud を開く] リンクを選択します。
  4. [Just-In-Time VM アクセス] ページで、az800L06-vm0 Azure VM を表すエントリが [構成済み] タブに表示されていることを確認します。

タスク 4: JIT VM アクセス経由で Azure VM に接続する

  1. az800L06-vm0 のページに戻り、[接続] を選択し、ドロップダウン リストで [RDP] を選択します。
  2. [az800L06-vm0 | 接続] ページの [接続元 IP アドレス] セクションで、[自分の IP] を選択し、[アクセス権の要求] を選択します。
  3. 要求が承認されたことを示す通知を待ち、[RDP ファイルのダウンロード] を選択し、プロンプトに従ってターゲット Azure VM に接続します。
  4. 資格情報のプロンプトが表示されたら、次の値を指定して、[OK] を選択します。

    設定
    ユーザー名 Student
    パスワード Pa55w.rd1234
  5. Azure VM で実行されているオペレーティング システムがリモート デスクトップ経由で正常にアクセスできることを確認し、リモート デスクトップ セッションを閉じます。

演習 6: Azure 環境のプロビジョニング解除

タスク 1: Cloud Shell で PowerShell セッションを開始する

  1. SEA-ADM1 の Azure portal を表示している Microsoft Edge ウィンドウで、Cloud Shell アイコンを選んで Azure Cloud Shell ウィンドウを開きます。
  2. Bash または PowerShell の選択を求めるプロンプトが表示されたら、[PowerShell] を選択します。

    : Cloud Shell を起動するのが初めてで、ストレージがマウントされていませんというメッセージが表示される場合は、このラボで使用しているサブスクリプションを選択してから、[ストレージの作成] を選択します。

タスク 2: ラボでプロビジョニングしたすべての Azure リソースを特定する

  1. [Cloud Shell] ウィンドウで次のコマンドを実行して、このラボで作成されたすべてのリソース グループのリストを表示します。

    Get-AzResourceGroup -Name 'AZ800-L06*'
    
  2. 次のコマンドを実行して、このラボで作成したすべてのリソース グループを削除します。

    Get-AzResourceGroup -Name 'AZ800-L06*' | Remove-AzResourceGroup -Force -AsJob
    

    : このコマンドは非同期で実行されます (-AsJob パラメーターによって決定されます)。 そのため、同じ PowerShell セッション内ですぐに別の PowerShell コマンドを実行できるようになりますが、リソース グループが実際に削除されるまでに数分かかります。