既存の Azure VM でトラステッド起動を有効にする
- [アーティクル]
-
-
適用対象: ✔️ Linux VM ✔️ Windows VM ✔️ 第 2 世代 VM
Azure Virtual Machines では、トラステッド起動のセキュリティの種類にアップグレードすると、既存の Azure 第 2 世代 仮想マシン (VM) で Azure トラステッド起動を有効にできます。
トラステッド起動は、Azure 第 2 世代 VM で基本的なコンピューティング セキュリティを実現し、ブート キットやルートキットなどの高度で持続的な攻撃手法から保護できる方法の 1 つです。 これを実現するには、VM 上でセキュア ブート、仮想トラステッド プラットフォーム モジュール (vTPM)、ブート整合性監視などのインフラストラクチャ テクノロジを組み合わせます。
重要
既存の Azure 第 1 世代 VM でのトラステッド起動の有効化のサポートは現在、プライベート プレビュー段階です。 登録フォームを使用するとプレビューにアクセスできます。
前提条件
- Azure 第 2 世代 VM は次で構成されます。
- Azure 第 2 世代 VM では、トラステッド起動で現在サポートされていない機能は使用されていません。
- トラステッド起動のセキュリティの種類を有効にする前に、Azure 第 2 世代 VM を "停止して割り当てを解除" する必要があります。
- Azure Backup は、VM に対して有効になっている場合、拡張バックアップ ポリシーを使用して構成する必要があります。 "Standard ポリシー" バックアップ保護を使って構成されている第 2 世代 VM に対しては、トラステッド起動のセキュリティの種類を有効にできません。
ベスト プラクティス
- 第 2 世代のテスト VM でトラステッド起動を有効にし、運用環境のワークロードに関連付けられている第 2 世代 VM でトラステッド起動を有効にする前に、前提条件を満たすために変更が必要かどうかを判断します。
- トラステッド起動のセキュリティの種類を有効にする前に、運用環境のワークロードに関連付けられている Azure 第 2 世代 VM に対して復元ポイントを作成します。 復元ポイントを使用して、ディスクと第 2 世代 VM を以前の既知の状態で再作成できます。
既存の VM でトラステッド起動を有効にする
Note
- 現在、トラステッド起動を有効にした後に、VM を Standard セキュリティの種類 (トラステッドではない起動構成) にロールバックすることはできません。
- vTPM は既定で有効になっています。
- カスタムの署名されていないカーネルまたはドライバーを使用していない場合は、セキュア ブートを有効にすることをお勧めします。 これは、既定では有効になっていません。 セキュア ブートでは、ブートの整合性が維持され、VM の基本的なセキュリティが有効になります。
Azure portal を使用して既存の Azure 第 2 世代 VM でトラステッド起動を有効にします。
Azure portal にサインインします。
VM の生成が V2 であることを確認し、その VM の [停止] を選択します。
VM のプロパティの概要ページの [セキュリティの種類] で、[Standard] を選択します。 VM の [構成] ページが開きます。
[構成] ページの [セキュリティの種類] セクションで、[セキュリティの種類] ドロップダウン リストを選択します。
ドロップダウン リストで、[トラステッド起動] を選択します。 チェック ボックスをオンにすると、セキュア ブートと vTPM が有効になります。 変更を加えた後、[保存] を選択します。
更新が正常に完了したら、[構成] ページを閉じます。 VM のプロパティの概要ページで、[セキュリティの種類] の設定を確認します。
アップグレードされたトラステッド起動 VM を起動します。 Windows VM の場合はリモート デスクトップ プロトコル (RDP)、Linux VM の場合は Secure Shell Protocol (SSH) を使用して VM にサインインできることを確認します。
Azure CLI を使用して既存の Azure 第 2 世代 VM でトラステッド起動を有効にするには、次の手順に従います。
Azure CLI の最新版がインストールされていること、および az login で Azure アカウントにサインイン済みであることを確認します。
VM の Azure サブスクリプションにサインインします。
az login
az account set --subscription 00000000-0000-0000-0000-000000000000
VM の割り当てを解除します。
az vm deallocate \
--resource-group myResourceGroup --name myVm
--security-type
を TrustedLaunch
に設定して、トラステッド起動を有効にします。
az vm update \
--resource-group myResourceGroup --name myVm \
--security-type TrustedLaunch \
--enable-secure-boot true --enable-vtpm true
前のコマンドの出力を確認します。 securityProfile
構成がコマンド出力と共に返されることを確認します。
{
"securityProfile": {
"securityType": "TrustedLaunch",
"uefiSettings": {
"secureBootEnabled": true,
"vTpmEnabled": true
}
}
}
VM を起動します。
az vm start \
--resource-group myResourceGroup --name myVm
アップグレードされたトラステッド起動 VM を起動します。 RDP (Windows VM の場合) または SSH (Linux VM の場合) を使用して VM にサインインできることを確認します。
手順に従って、Azure PowerShell を使用して既存の Azure 第 2 世代 VM でトラステッド起動を有効にします。
Azure PowerShell の最新版がインストールされていること、および Connect-AzAccount で Azure アカウントにサインイン済みであることを確認します。
VM の Azure サブスクリプションにサインインします。
Connect-AzAccount -SubscriptionId 00000000-0000-0000-0000-000000000000
VM の割り当てを解除します。
Stop-AzVM -ResourceGroupName myResourceGroup -Name myVm
-SecurityType
を TrustedLaunch
に設定して、トラステッド起動を有効にします。
Get-AzVM -ResourceGroupName myResourceGroup -VMName myVm `
| Update-AzVM -SecurityType TrustedLaunch `
-EnableSecureBoot $true -EnableVtpm $true
更新された VM 構成で securityProfile
を検証します。
# Following command output should be `TrustedLaunch`
(Get-AzVM -ResourceGroupName myResourceGroup -VMName myVm `
| Select-Object -Property SecurityProfile `
-ExpandProperty SecurityProfile).SecurityProfile.SecurityType
# Following command output should return `SecureBoot` and `vTPM` settings
(Get-AzVM -ResourceGroupName myResourceGroup -VMName myVm `
| Select-Object -Property SecurityProfile `
-ExpandProperty SecurityProfile).SecurityProfile.Uefisettings
VM を起動します。
Start-AzVM -ResourceGroupName myResourceGroup -Name myVm
アップグレードされたトラステッド起動 VM を起動します。 RDP (Windows VM の場合) または SSH (Linux VM の場合) を使用して VM にサインインできることを確認します。
ARM テンプレートを使って、既存の Azure 第 2 世代 VM でトラステッド起動を有効にするには、次の手順に従います。
Azure Resource Manager テンプレートは JavaScript Object Notation (JSON) ファイルであり、プロジェクトのインフラストラクチャと構成が定義されています。 このテンプレートでは、宣言型の構文が使用されています。 デプロイしようとしているものを、デプロイを作成する一連のプログラミング コマンドを記述しなくても記述できます。
テンプレートを確認します。
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"vmsToUpgrade": {
"type": "object",
"metadata": {
"description": "Specifies the list of Gen2 virtual machines to be upgraded to Trusted launch."
}
},
"vTpmEnabled": {
"type": "bool",
"defaultValue": true,
"metadata": {
"description": "Specifies whether vTPM should be enabled on the virtual machine."
}
}
},
"resources": [
{
"type": "Microsoft.Compute/virtualMachines",
"apiVersion": "2022-11-01",
"name": "[parameters('vmsToUpgrade').virtualMachines[copyIndex()].vmName]",
"location": "[parameters('vmsToUpgrade').virtualMachines[copyIndex()].location]",
"properties": {
"securityProfile": {
"uefiSettings": {
"secureBootEnabled": "[parameters('vmsToUpgrade').virtualMachines[copyIndex()].secureBootEnabled]",
"vTpmEnabled": "[parameters('vTpmEnabled')]"
},
"securityType": "TrustedLaunch"
}
},
"copy": {
"name": "vmCopy",
"count": "[length(parameters('vmsToUpgrade').virtualMachines)]"
}
}
]
}
TrustedLaunch
のセキュリティの種類で更新される VM を含む parameters
JSON ファイルを編集します。
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"vmsToUpgrade": {
"value": {
"virtualMachines": [
{
"vmName": "myVm01",
"location": "westus3",
"secureBootEnabled": true
},
{
"vmName": "myVm02",
"location": "westus3",
"secureBootEnabled": true
}
]
}
}
}
}
パラメータ ファイルの定義
プロパティ |
プロパティの説明 |
テンプレート値の例 |
vmName |
Azure 第 2 世代 VM の名前。 |
myVm |
location |
Azure 第 2 世代 VM の場所。 |
westus3 |
secureBootEnabled |
トラステッド起動のセキュリティの種類でセキュア ブートを有効にする。 |
true |
更新するすべての Azure 第 2 世代 VM の割り当てを解除します。
Stop-AzVM -ResourceGroupName myResourceGroup -Name myVm01
ARM テンプレートのデプロイを実行します。
$resourceGroupName = "myResourceGroup"
$parameterFile = "folderPathToFile\parameters.json"
$templateFile = "folderPathToFile\template.json"
New-AzResourceGroupDeployment `
-ResourceGroupName $resourceGroupName `
-TemplateFile $templateFile -TemplateParameterFile $parameterFile
アップグレードされたトラステッド起動 VM を起動します。 RDP (Windows VM の場合) または SSH (Linux VM の場合) を使用して VM にサインインできることを確認します。
Azure Advisor の推奨事項
Azure Advisor は、既存の第 2 世代 VM がトラステッド起動、つまり Azure VM のより高いセキュリティ態勢を追加料金なしで採用できるように、既存の第 2 世代 VM のオペレーショナル エクセレンスの推奨事項として、トラステッド起動の有効化、基礎的な卓越性、最新のセキュリティを提供します。 第 2 世代 VM に、トラステッド起動に移行するための前提条件がすべて満たされていることを確認し、OS イメージの検証、VM サイズ、復元ポイントの作成など、すべてのベスト プラクティスに従ってください。 Advisor の推奨事項を完了と見なすには、「既存の VM でトラステッド起動を有効にする」で説明されている手順に従って、仮想マシンのセキュリティの種類をアップグレードし、トラステッド起動を有効にします。
トラステッド起動の前提条件に適合しない第 2 世代 VM がある場合
トラステッド起動にアップグレードするための前提条件を満たしていない第 2 世代 VM の場合は、前提条件を満たす方法を確認します。 たとえば、サポートされていない仮想マシン サイズを使用している場合は、トラステッド起動をサポートする、トラステッド起動がサポートされている同等のサイズを探してください。
Note
Gen2 仮想マシンが、MSv2 シリーズのようなトラステッド起動で現在サポートされていない VM サイズ ファミリで構成されている場合は、推奨事項を無視してください。
関連するコンテンツ