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


Краткое руководство. Создание и шифрование виртуальной машины 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.