Поделиться через


Краткое руководство. Создание и шифрование виртуальной машины Linux в Azure с помощью Azure PowerShell

Область применения: ✔️ Виртуальные машины Linux ✔️ Гибкие масштабируемые наборы

Модуль PowerShell используется для создания ресурсов Azure и управления ими с помощью командной строки PowerShell или скриптов. В этом кратком руководстве показано, как использовать модуль Azure PowerShell для создания виртуальной машины Linux, создания Хранилища ключей для хранения ключей шифрования и шифрования виртуальной машины. В этом быстром старте используется образ Ubuntu 16.04 LTS из Marketplace Canonical и виртуальная машина размера Standard_D2S_V3. Однако любую поддерживаемую версию образа Linux ADE можно использовать вместо виртуальной машины Ubuntu.

Если у вас нет подписки Azure, создайте бесплатную учетную запись, прежде чем приступить к работе.

Создайте группу ресурсов

Создайте группу ресурсов Azure с помощью командлета PowerShell 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

Развертывание виртуальной машины занимает несколько минут.

Создайте хранилище ключей, настроенное для ключей шифрования

Шифрование дисков Azure хранит ключ шифрования в Azure Key Vault. Создайте Key Vault через New-AzKeyvault. Чтобы включить хранилище ключей для хранения ключей шифрования, используйте параметр -EnabledForDiskEncryption.

Это важно

Каждое хранилище ключей должно иметь уникальное имя в Azure. В следующих примерах замените <ваше-уникальное-имя-хранилища-ключей> на выбранное вами имя.

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"

Дальнейшие действия

В этом кратком руководстве вы создали виртуальную машину, создали хранилище ключей с поддержкой шифрования и зашифровали виртуальную машину. Перейдите к следующей статье, чтобы узнать больше о шифровании дисков Azure для виртуальных машин Linux.