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


Шифрование дисков Azure для Linux (Microsoft.Azure.Security.AzureDiskEncryptionForLinux)

Обзор

Шифрование дисков Azure использует подсистему dm-crypt в Linux для обеспечения полного шифрования дисков при выборе дистрибутивов Azure Linux. Это решение интегрировано с Azure Key Vault для управления ключами шифрования дисков и секретами.

Примечание.

Новое! Попробуйте использовать поддержку виртуальной машины для ускорения диагностикиРекомендуется запустить VM Assist для Windows или VM Assist для Linux. Эти средства диагностики на основе скриптов помогают выявить распространенные проблемы, влияющие на гостевой агент виртуальной машины Azure и общую работоспособность виртуальных машин.

Предпосылки

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

Схема расширения

Существует две версии схемы расширения для шифрования дисков Azure (ADE):

  • версия 1.1. Более новая рекомендуемая схема, которая не использует свойства Microsoft Entra.
  • v0.1 — более старая схема, требующая свойств Microsoft Entra.

Чтобы выбрать целевую схему, typeHandlerVersion свойство должно быть равно версии схемы, которую вы хотите использовать.

Рекомендуется использовать схему версии 1.1 и не требуется свойства Microsoft Entra.

Примечание.

Параметр DiskFormatQuery не рекомендуется. Его функциональные возможности заменены параметром EncryptFormatAll, который рекомендуется использовать для форматирования дисков данных во время шифрования.

{
  "type": "extensions",
  "name": "[name]",
  "apiVersion": "2019-07-01",
  "location": "[location]",
  "properties": {
        "publisher": "Microsoft.Azure.Security",
        "type": "AzureDiskEncryptionForLinux",
        "typeHandlerVersion": "1.1",
        "autoUpgradeMinorVersion": true,
        "settings": {
          "DiskFormatQuery": "[diskFormatQuery]",
          "EncryptionOperation": "[encryptionOperation]",
          "KeyEncryptionAlgorithm": "[keyEncryptionAlgorithm]",
          "KeyVaultURL": "[keyVaultURL]",
          "KeyVaultResourceId": "[KeyVaultResourceId]",
          "KeyEncryptionKeyURL": "[keyEncryptionKeyURL]",
          "KekVaultResourceId": "[KekVaultResourceId",
          "SequenceVersion": "sequenceVersion]",
          "VolumeType": "[volumeType]"
        }
  }
}

Схема версии 0.1: с идентификатором Microsoft Entra

Для схемы 0.1 требуется AADClientID или AADClientSecretAADClientCertificate.

Использование AADClientSecret:

{
  "type": "extensions",
  "name": "[name]",
  "apiVersion": "2019-07-01",
  "location": "[location]",
  "properties": {
    "protectedSettings": {
      "AADClientSecret": "[aadClientSecret]",
      "Passphrase": "[passphrase]"
    },
    "publisher": "Microsoft.Azure.Security",
    "type": "AzureDiskEncryptionForLinux",
    "typeHandlerVersion": "0.1",
    "settings": {
      "AADClientID": "[aadClientID]",
      "DiskFormatQuery": "[diskFormatQuery]",
      "EncryptionOperation": "[encryptionOperation]",
      "KeyEncryptionAlgorithm": "[keyEncryptionAlgorithm]",
      "KeyEncryptionKeyURL": "[keyEncryptionKeyURL]",
      "KeyVaultURL": "[keyVaultURL]",
      "SequenceVersion": "sequenceVersion]",
      "VolumeType": "[volumeType]"
    }
  }
}

Использование AADClientCertificate:

{
  "type": "extensions",
  "name": "[name]",
  "apiVersion": "2019-07-01",
  "location": "[location]",
  "properties": {
    "protectedSettings": {
      "AADClientCertificate": "[aadClientCertificate]",
      "Passphrase": "[passphrase]"
    },
    "publisher": "Microsoft.Azure.Security",
    "type": "AzureDiskEncryptionForLinux",
    "typeHandlerVersion": "0.1",
    "settings": {
      "AADClientID": "[aadClientID]",
      "DiskFormatQuery": "[diskFormatQuery]",
      "EncryptionOperation": "[encryptionOperation]",
      "KeyEncryptionAlgorithm": "[keyEncryptionAlgorithm]",
      "KeyEncryptionKeyURL": "[keyEncryptionKeyURL]",
      "KeyVaultURL": "[keyVaultURL]",
      "SequenceVersion": "sequenceVersion]",
      "VolumeType": "[volumeType]"
    }
  }
}

Значения свойств

Примечание. Все значения свойств чувствительны к регистру.

Имя Значение и пример Тип данных
apiVersion 2019-07-01 дата
издатель Microsoft.Azure.Security струна
тип AzureDiskEncryptionForLinux струна
typeHandlerVersion 1.1, 0.1 int
(схема 0.1) AADClientID xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx гид
(схема 0.1) AADClientSecret пароль струна
(схема 0.1) AADClientCertificate Отпечаток большого пальца струна
(необязательно) (схема 0.1) Парольная фраза пароль струна
DiskFormatQuery {"dev_path":"","name":"","file_system":""} Словарь JSON
EncryptionOperation ВключитьШифрование, ВключитьШифрованиеФорматироватьВсе струна
(необязательно— RSA-OAEP по умолчанию) KeyEncryptionAlgorithm RSA-OAEP, RSA-OAEP-256, RSA1_5 струна
KeyVaultURL url струна
KeyVaultResourceId url струна
(необязательно) KeyEncryptionKeyURL url струна
(необязательно) KekVaultResourceId url струна
(необязательно) SequenceVersion уникальный идентификатор струна
VolumeType ОС, данные, все струна

Развертывание шаблона

Пример развертывания шаблона на основе схемы версии 1.1 см. в шаблоне быстрого запуска Azure encrypt-running-linux-vm-without-aad.

Пример развертывания шаблона на основе схемы версии 0.1 см. в статье "Шаблон быстрого запуска Azure encrypt-running-linux-vm".

Предупреждение

  • Если вы уже использовали шифрование дисков Azure c Microsoft Entra ID для шифрования виртуальной машины, продолжайте и далее пользоваться этим способом шифрования виртуальной машины.
  • При шифровании томов Linux ОС виртуальная машина должна считаться недоступной. Настоятельно рекомендуется избегать входа по протоколу SSH во время шифрования, чтобы избежать проблем с блокированием открытых файлов, к которым необходимо получить доступ во время процесса шифрования. Чтобы проверить ход выполнения, используйте командлет PowerShell Get-AzVMDiskEncryptionStatus или команду CLI vm encryption show. Этот процесс может занять несколько часов для тома операционной системы 30 ГБ, а также дополнительное время для шифрования томов данных. Время шифрования томов данных будет пропорционально размеру и количеству томов данных; параметр encrypt format all быстрее, чем шифрование на месте, но приведет к потере всех данных на дисках.
  • Отключение шифрования на виртуальных машинах Linux поддерживается только для томов данных. Если том операционной системы зашифрован, то отключение не поддерживается для томов данных и томов ОС.

Примечание.

Кроме того, если VolumeType для параметра задано значение All, диски данных будут зашифрованы только в том случае, если они подключены должным образом.

Устранение неполадок и поддержка

Устранение неполадок

Дополнительные сведения см. в руководстве по устранению неполадок с шифрованием дисков Azure.

Поддержка

Если в любой момент при изучении этой статьи вам потребуется дополнительная помощь, вы можете обратиться к экспертам по Azure на форумах MSDN Azure и Stack Overflow.

Кроме того, можно зарегистрировать обращение в службу поддержки Azure. Перейдите в службу поддержки Azure и выберите "Получить поддержку". Дополнительные сведения об использовании службы поддержки Azure см. в статье "Часто задаваемые вопросы о поддержке Microsoft Azure".

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