Linux용 Azure Disk Encryption(Microsoft.Azure.Security.AzureDiskEncryptionForLinux)
개요
Azure Disk Encryption은 Linux에서 dm-crypt 서브 시스템을 활용하여 Azure Linux 배포판 선택에서 전체 디스크 암호화를 제공합니다. 이 솔루션은 Azure Key Vault와 통합되어 디스크 암호화 키와 비밀을 관리합니다.
필수 조건
필수 구성 요소의 전체 목록은 Linux VM용 Azure Disk Encryption, 특히 다음 섹션을 참조하세요.
확장 스키마
Azure Disk Encryption(ADE)에는 두 가지 버전의 확장 스키마가 있습니다.
- v1.1 - Microsoft Entra 속성을 사용하지 않는 최신 권장 스키마입니다.
- v0.1 - Microsoft Entra 속성이 필요한 이전 스키마입니다.
대상 스키마를 선택하려면 typeHandlerVersion
속성을 사용하려는 스키마 버전과 동일하게 설정해야 합니다.
스키마 v1.1: Microsoft Entra ID 없음(권장)
v1.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]"
}
}
}
스키마 v0.1: Microsoft Entra ID 포함
0.1 스키마에는 AADClientID
와 AADClientSecret
또는 AADClientCertificate
중 하나가 필요합니다.
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 | 날짜 |
publisher | Microsoft.Azure.Security | string |
type | AzureDiskEncryptionForLinux | string |
typeHandlerVersion | 1.1, 0.1 | int |
(0.1 스키마) AADClientID | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx | guid |
(0.1 스키마) AADClientSecret | password | string |
(0.1 스키마) AADClientCertificate | thumbprint | string |
(선택 사항)(0.1 스키마) 암호 | password | string |
DiskFormatQuery | {"dev_path":"","name":"","file_system":""} | JSON 사전 |
EncryptionOperation | EnableEncryption, EnableEncryptionFormatAll | string |
(선택 사항 - 기본 RSA-OAEP) KeyEncryptionAlgorithm | 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' | string |
KeyVaultURL | url | string |
KeyVaultResourceId | url | string |
(선택 사항) KeyEncryptionKeyURL | url | string |
(선택 사항) KekVaultResourceId | url | string |
(선택 사항) SequenceVersion | uniqueidentifier | string |
VolumeType | OS, Data, All | string |
템플릿 배포
스키마 v1.1을 기반으로 하는 템플릿 배포의 예는 Azure 빠른 시작 템플릿 encrypt-running-linux-vm-without-aad를 참조하세요.
스키마 v0.1을 기반으로 하는 템플릿 배포의 예는 Azure 빠른 시작 템플릿 encrypt-running-linux-vm을 참조하세요.
Warning
- 이전에 VM을 암호화하기 위하여 Microsoft Entra ID에서 Azure 디스크 암호화를 사용한 적이 있다면 VM을 암호화할 때 이 옵션을 계속 사용하여야 합니다.
- Linux OS 볼륨을 암호화하는 경우, VM은 사용할 수 없는 것으로 간주해야 합니다. 암호화 프로세스 중에 액세스해야 할 모든 열린 파일을 차단하는 문제를 방지하려면 암호화가 진행 중일 때 SSH 로그인을 하지 말 것을 적극 권장합니다. 진행률을 확인하려면 Get-AzVMDiskEncryptionStatus PowerShell cmdlet을 사용하거나 vm encryption show CLI 명령을 사용합니다. 해당 프로세스는 30GB OS 볼륨을 처리하기까지 몇 시간이 걸리며 데이터 볼륨을 암호화하기까지 추가적인 시간이 소요될 수 있습니다. 데이터 볼륨 암호화 시간은 데이터 볼륨의 크기와 수량에 비례합니다.
encrypt format all
옵션은 현재 위치 암호화보다 빠르지만 디스크의 모든 데이터가 손실됩니다. - Linux VM에서 암호화 사용 안 함은 데이터 볼륨에 관해서만 지원됩니다. OS 볼륨이 암호화된 경우 해당 설정은 데이터 또는 OS 볼륨에서 지원되지 않습니다.
참고 항목
또한 VolumeType
매개 변수를 All로 설정하면 데이터 디스크가 적절히 탑재된 경우에만 암호화됩니다.
문제 해결 및 지원
문제 해결
문제 해결 방법은 Azure Disk Encryption 문제 해결 가이드를 참조하세요.
지원
이 문서의 어디에서든 도움이 필요한 경우 MSDN Azure 및 Stack Overflow 포럼에서 Azure 전문가에게 문의할 수 있습니다.
또는 Azure 기술 지원 인시던트를 제출할 수 있습니다. Azure 지원으로 이동하여 지원받기를 선택합니다. Azure 지원을 사용하는 방법에 대한 자세한 내용은 Microsoft Azure 지원 FAQ를 참조하세요.
다음 단계
- VM 확장에 대한 자세한 내용은 Linux용 가상 머신 확장 및 기능 개요를 참조하세요.
- Linux용 Azure Disk Encryption에 대한 자세한 내용은 Linux 가상 머신을 참조하세요.