Краткое руководство. Создание и шифрование виртуальной машины Linux в Azure с помощью Azure PowerShell
Область применения: ✔️ Виртуальные машины Linux ✔️ Гибкие масштабируемые наборы
Модуль PowerShell используется для создания ресурсов Azure и управления ими с помощью командной строки PowerShell или скриптов. В этом кратком руководстве показано, как с помощью модуля Azure PowerShell создать виртуальную машину Linux, Key Vault для хранения ключей шифрования и зашифровать виртуальную машину. В этом кратком руководстве используется образ Ubuntu 16.04 LTS marketplace от Canonical и виртуальная машина размера Standard_D2S_V3. Однако любую поддерживаемую версию образа Linux ADE можно использовать вместо виртуальной машины Ubuntu.
Если у вас нет подписки Azure, создайте бесплатную учетную запись, прежде чем приступить к работе.
Создание или изменение группы ресурсов
Создайте группу ресурсов Azure с помощью командлета New-AzResourceGroup. Группа ресурсов — это логический контейнер, в котором происходит развертывание ресурсов Azure и управление ими.
New-AzResourceGroup -Name "myResourceGroup" -Location "EastUS"
Создание виртуальной машины
Создайте виртуальную машину Azure с помощью New-AzVM, передавая ему объект конфигурации виртуальной машины, созданный на предыдущем шаге.
$cred = Get-Credential
New-AzVM -Name MyVm -Credential $cred -ResourceGroupName MyResourceGroup -Image Canonical:UbuntuServer:18.04-LTS:latest -Size Standard_D2S_V3
Развертывание виртуальной машины занимает несколько минут.
Создание Key Vault, настроенного для ключей шифрования
Шифрование дисков Azure хранит ключи шифрования в Azure Key Vault. Создайте Key Vault с помощью командлета New-AzKeyVault. Чтобы включить в Key Vault возможность хранения ключей шифрования, используйте параметр -EnabledForDiskEncryption.
Внимание
Каждое хранилище ключей должно иметь уникальное имя в Azure. В следующих примерах замените <имя-unique-keyvault на> выбранное имя.
New-AzKeyvault -name "<your-unique-keyvault-name>" -ResourceGroupName "myResourceGroup" -Location EastUS -EnabledForDiskEncryption
Шифрование виртуальной машины
Зашифруйте виртуальную машину, выполнив командлет Set-AzVmDiskEncryptionExtension.
Set-AzVmDiskEncryptionExtension требует некоторых значений из объекта Key Vault. Их можно получить, передав уникальное имя хранилища ключей в Get-AzKeyvault.
$KeyVault = Get-AzKeyVault -VaultName "<your-unique-keyvault-name>" -ResourceGroupName "MyResourceGroup"
Set-AzVMDiskEncryptionExtension -ResourceGroupName MyResourceGroup -VMName "MyVM" -DiskEncryptionKeyVaultUrl $KeyVault.VaultUri -DiskEncryptionKeyVaultId $KeyVault.ResourceId -SkipVmBackup -VolumeType All
Через несколько минут вы получите такой результат:
RequestId IsSuccessStatusCode StatusCode ReasonPhrase
--------- ------------------- ---------- ------------
True OK OK
Вы можете проверить процесс шифрования, выполнив командлет Get-AzVmDiskEncryptionStatus.
Get-AzVmDiskEncryptionStatus -VMName MyVM -ResourceGroupName MyResourceGroup
Если шифрование включено, в полученных выходных данных вы увидите следующий код:
OsVolumeEncrypted : EncryptionInProgress
DataVolumesEncrypted : NotMounted
OsVolumeEncryptionSettings : Microsoft.Azure.Management.Compute.Models.DiskEncryptionSettings
ProgressMessage : OS disk encryption started
Очистка ресурсов
Вы можете удалить ненужную группу ресурсов, виртуальную машину и все связанные с ней ресурсы, выполнив командлет Remove-AzResourceGroup.
Remove-AzResourceGroup -Name "myResourceGroup"
Следующие шаги
В рамках этого краткого руководства вы создали виртуальную машину, включенный для ключей шифрования Key Vault и зашифровали виртуальную машину. Перейдите к следующей статье, чтобы узнать больше о шифровании дисков Azure для виртуальных машин Linux.