Az Azure CLI használatával engedélyezze a végpontok közötti titkosítást a gazdagép titkosításával

A következőkre vonatkozik: ✔️ Linux rendszerű virtuális gépek rugalmas méretezési ✔️ csoportjai

Ha engedélyezi a titkosítást a gazdagépen, a virtuálisgép-gazdagépen tárolt adatok inaktív állapotban lesznek titkosítva, és a Storage szolgáltatásba titkosított folyamatok lesznek titkosítva. A gazdagépen történő titkosítással és más felügyelt lemeztitkosítási típusokkal kapcsolatos elméleti információkért lásd : Titkosítás a gazdagépen – A virtuálisgép-adatok végpontok közötti titkosítása.

Korlátozások

  • 4k szektorméretű Ultra Disks és Premium SSD v2 esetén támogatott.
  • Csak 512e szektorméretű Ultra Disks és Premium SSD v2 esetén támogatott, ha 2023. 05. 13. után lettek létrehozva.
    • Az ezen dátum előtt létrehozott lemezek esetében pillanatképet készít a lemezről, és hozzon létre egy új lemezt a pillanatkép használatával.
  • Nem engedélyezhető olyan virtuális gépeken (virtuális gépeken) vagy virtuálisgép-méretezési csoportokon, amelyeken jelenleg vagy valaha engedélyezve volt az Azure Disk Encryption.
  • Az Azure Disk Encryption nem engedélyezhető olyan lemezeken, amelyeken engedélyezve van a titkosítás a gazdagépen.
  • A titkosítás a meglévő virtuálisgép-méretezési csoportokon engedélyezhető. A titkosítás engedélyezése után létrehozott új virtuális gépek azonban automatikusan titkosítva lesznek.
  • A meglévő virtuális gépeket felszabadítani és újra kell helyezni a titkosításhoz.

Regionális elérhetőség

A gazdagépen a titkosítás minden régióban elérhető minden lemeztípushoz.

Támogatott virtuálisgép-méretek

A támogatott virtuálisgép-méretek teljes listája programozott módon lekérehető. A programozott lekérésükről a Támogatott virtuálisgép-méretek keresése című szakaszban olvashat. A virtuális gép méretének frissítése ellenőrzéssel ellenőrzi, hogy az új virtuálisgép-méret támogatja-e a EncryptionAtHost szolgáltatást.

Előfeltételek

Mielőtt a VM/VMSS EncryptionAtHost tulajdonságát használnátok, engedélyeznie kell az előfizetés funkcióját. Az alábbi lépésekkel engedélyezheti a funkciót az előfizetéséhez:

  • A következő parancs végrehajtásával regisztrálhatja a funkciót az előfizetéséhez
az feature register --namespace Microsoft.Compute --name EncryptionAtHost
  • A funkció kipróbálása előtt ellenőrizze, hogy a regisztrációs állapot regisztrálva van-e (néhány percet vesz igénybe) az alábbi paranccsal.
az feature show --namespace Microsoft.Compute --name EncryptionAtHost

Erőforrások létrehozása

Feljegyzés

Ez a szakasz csak az ügyfél által felügyelt kulcsokkal rendelkező konfigurációkra vonatkozik. Platform által felügyelt kulcsok használata esetén ugorjon a Példaszkriptek szakaszra.

Ha a funkció engedélyezve van, be kell állítania egy DiskEncryptionSet, valamint egy Azure Key Vaultot vagy egy Felügyelt Azure Key Vault HSM-et.

Azure Key Vault

  • Telepítse a legújabb Azure CLI-t, és jelentkezzen be egy Azure-fiókba az az login használatával.
  • Hozzon létre egy Azure Key Vaultot és egy titkosítási kulcsot.

A Key Vault létrehozásakor engedélyeznie kell a kiürítés elleni védelmet. A törlés elleni védelem biztosítja, hogy a törölt kulcsok nem törölhetők véglegesen, amíg a megőrzési időszak el nem telik. Ezek a beállítások védelmet nyújtanak a véletlen törlés miatti adatvesztéstől. Ezek a beállítások kötelezőek, ha key vaultot használnak a felügyelt lemezek titkosításához.

Fontos

Ha így tesz, problémákat tapasztalhat, amikor további lemezeket rendel az erőforráshoz az Azure Portalon.

subscriptionId=yourSubscriptionID
rgName=yourResourceGroupName
location=westcentralus
keyVaultName=yourKeyVaultName
keyName=yourKeyName
diskEncryptionSetName=yourDiskEncryptionSetName
diskName=yourDiskName

az account set --subscription $subscriptionId

az group create --resource-group $rgName --location $location

az keyvault create -n $keyVaultName \
-g $rgName \
-l $location \
--enable-purge-protection true 

az keyvault key create --vault-name $keyVaultName \
-n $keyName \
--protection software
  • DiskEncryptionSet létrehozása. Az enable-auto-key-rotáció értéke true (igaz) értékre állítható be a kulcs automatikus elforgatásához. Ha engedélyezi az automatikus forgatást, a rendszer automatikusan frissíti az összes felügyelt lemezt, pillanatképet és lemezképet, amely a lemeztitkosítási csoportra hivatkozik, hogy egy órán belül használja a kulcs új verzióját.
keyVaultKeyUrl=$(az keyvault key show --vault-name $keyVaultName --name $keyName --query [key.kid] -o tsv)

az disk-encryption-set create -n $diskEncryptionSetName \
-l $location \
-g $rgName \
--key-url $keyVaultKeyUrl \
--enable-auto-key-rotation false
  • Adjon hozzáférést a DiskEncryptionSet erőforrásnak a kulcstartóhoz.

Feljegyzés

Eltarthat néhány percig, amíg az Azure létrehozza a DiskEncryptionSet identitását a Microsoft Entra-azonosítójában. Ha a következő parancs futtatásakor "Nem található az Active Directory-objektum" hibaüzenet jelenik meg, várjon néhány percet, és próbálkozzon újra.

desIdentity=$(az disk-encryption-set show -n $diskEncryptionSetName -g $rgName --query [identity.principalId] -o tsv)

az keyvault set-policy -n $keyVaultName \
-g $rgName \
--object-id $desIdentity \
--key-permissions wrapkey unwrapkey get

Azure Key Vault Managed HSM

Másik lehetőségként egy felügyelt HSM-et is használhat a kulcsok kezeléséhez.

Ehhez a következő előfeltételeket kell teljesítenie:

Konfiguráció

Miután létrehozott egy felügyelt HSM-et, és engedélyeket adott hozzá, engedélyezze a törlés elleni védelmet, és hozzon létre egy titkosítási kulcsot.

subscriptionId=yourSubscriptionID
rgName=yourResourceGroupName
location=westcentralus
keyVaultName=yourKeyVaultName
keyName=yourKeyName
diskEncryptionSetName=yourDiskEncryptionSetName
diskName=yourDiskName
    
az account set --subscription $subscriptionId
    
az keyvault update-hsm --subscription $subscriptionId -g $rgName --hsm-name $keyVaultName --enable-purge-protection true
    
az keyvault key create --hsm-name  $keyVaultName --name $keyName --ops wrapKey unwrapKey --kty RSA-HSM --size 2048

Ezután hozzon létre egy DiskEncryptionSetet.

keyVaultKeyUrl=$(az keyvault key show --vault-name $keyVaultName --name $keyName --query [key.kid] -o tsv)
    
az disk-encryption-set create -n $diskEncryptionSetName \
-l $location \
-g $rgName \
--key-url $keyVaultKeyUrl \
--enable-auto-key-rotation false

Végül adjon hozzáférést a DiskEncryptionSetnek a felügyelt HSM-hez.

desIdentity=$(az disk-encryption-set show -n $diskEncryptionSetName -g $rgName --query [identity.principalId] -o tsv)
    
az keyvault role assignment create --hsm-name $keyVaultName --role "Managed HSM Crypto Service Encryption User" --assignee $desIdentity --scope /keys

Példaszkriptek

Virtuális gép létrehozása ügyfél által felügyelt kulcsokkal engedélyezett titkosítással a gazdagépen

Hozzon létre egy felügyelt lemezekkel rendelkező virtuális gépet a korábban létrehozott DiskEncryptionSet erőforrás-URI-jával az operációs rendszer és az adatlemezek gyorsítótárának ügyfél által felügyelt kulcsokkal történő titkosításához. Az ideiglenes lemezek platform által felügyelt kulcsokkal vannak titkosítva.

rgName=yourRGName
vmName=yourVMName
location=eastus
vmSize=Standard_DS2_v2
image=LinuxImageURN
diskEncryptionSetName=yourDiskEncryptionSetName

diskEncryptionSetId=$(az disk-encryption-set show -n $diskEncryptionSetName -g $rgName --query [id] -o tsv)

az vm create -g $rgName \
-n $vmName \
-l $location \
--encryption-at-host \
--image $image \
--size $vmSize \
--generate-ssh-keys \
--os-disk-encryption-set $diskEncryptionSetId \
--data-disk-sizes-gb 128 128 \
--data-disk-encryption-sets $diskEncryptionSetId $diskEncryptionSetId

Virtuális gép létrehozása platform által felügyelt kulcsokkal engedélyezett titkosítással a gazdagépen

Hozzon létre egy virtuális gépet a gazdagépen engedélyezett titkosítással az operációs rendszer/adatlemezek és ideiglenes lemezek gyorsítótárának platform által felügyelt kulcsokkal történő titkosításához.

rgName=yourRGName
vmName=yourVMName
location=eastus
vmSize=Standard_DS2_v2
image=LinuxImageURN

az vm create -g $rgName \
-n $vmName \
-l $location \
--encryption-at-host \
--image $image \
--size $vmSize \
--generate-ssh-keys \
--data-disk-sizes-gb 128 128 \

Virtuális gép frissítése a gazdagép titkosításának engedélyezéséhez

rgName=yourRGName
vmName=yourVMName

az vm update -n $vmName \
-g $rgName \
--set securityProfile.encryptionAtHost=true

Virtuális gép titkosítási állapotának ellenőrzése a gazdagépen

rgName=yourRGName
vmName=yourVMName

az vm show -n $vmName \
-g $rgName \
--query [securityProfile.encryptionAtHost] -o tsv

Virtuális gép frissítése a gazdagép titkosításának letiltásához

A virtuális gép felszabadítása előtt le kell tiltania a titkosítást a gazdagépen.

rgName=yourRGName
vmName=yourVMName

az vm update -n $vmName \
-g $rgName \
--set securityProfile.encryptionAtHost=false

Virtuálisgép-méretezési csoport létrehozása a gazdagépen az ügyfél által felügyelt kulcsokkal engedélyezett titkosítással

Hozzon létre egy virtuálisgép-méretezési csoportot felügyelt lemezekkel a korábban létrehozott DiskEncryptionSet erőforrás-URI-jával az operációs rendszer és az adatlemezek gyorsítótárának ügyfél által felügyelt kulcsokkal történő titkosításához. Az ideiglenes lemezek platform által felügyelt kulcsokkal vannak titkosítva.

Fontos

2023 novemberétől a PowerShell és az Azure CLI használatával létrehozott virtuálisgép-méretezési csoportok alapértelmezés szerint rugalmas vezénylési módba kerülnek, ha nincs megadva vezénylési mód. A módosítással és a végrehajtandó műveletekkel kapcsolatos további információkért tekintse meg a VMSS PowerShell/CLI-ügyfelek kompatibilitástörő változását – Microsoft Community Hub

rgName=yourRGName
vmssName=yourVMSSName
location=westus2
vmSize=Standard_DS3_V2
image=Ubuntu2204
diskEncryptionSetName=yourDiskEncryptionSetName

diskEncryptionSetId=$(az disk-encryption-set show -n $diskEncryptionSetName -g $rgName --query [id] -o tsv)

az vmss create -g $rgName \
-n $vmssName \
--encryption-at-host \
--image $image \
--orchestration-mode flexible \
--admin-username azureuser \
--generate-ssh-keys \
--os-disk-encryption-set $diskEncryptionSetId \
--data-disk-sizes-gb 64 128 \
--data-disk-encryption-sets $diskEncryptionSetId $diskEncryptionSetId

Virtuálisgép-méretezési csoport létrehozása platform által felügyelt kulcsokkal engedélyezett titkosítással a gazdagépen

Hozzon létre egy virtuálisgép-méretezési csoportot a gazdagépen engedélyezett titkosítással az operációs rendszer/adatlemezek és ideiglenes lemezek gyorsítótárának platform által felügyelt kulcsokkal történő titkosításához.

Fontos

2023 novemberétől a PowerShell és az Azure CLI használatával létrehozott virtuálisgép-méretezési csoportok alapértelmezés szerint rugalmas vezénylési módba kerülnek, ha nincs megadva vezénylési mód. A módosítással és a végrehajtandó műveletekkel kapcsolatos további információkért tekintse meg a VMSS PowerShell/CLI-ügyfelek kompatibilitástörő változását – Microsoft Community Hub

rgName=yourRGName
vmssName=yourVMSSName
location=westus2
vmSize=Standard_DS3_V2
image=Ubuntu2204

az vmss create -g $rgName \
-n $vmssName \
--encryption-at-host \
--image $image \
--orchestration-mode flexible \
--admin-username azureuser \
--generate-ssh-keys \
--data-disk-sizes-gb 64 128 \

Virtuálisgép-méretezési csoport frissítése a gazdagép titkosításának engedélyezéséhez

rgName=yourRGName
vmssName=yourVMName

az vmss update -n $vmssName \
-g $rgName \
--set virtualMachineProfile.securityProfile.encryptionAtHost=true

Virtuálisgép-méretezési csoport titkosítási állapotának ellenőrzése a gazdagépen

rgName=yourRGName
vmssName=yourVMName

az vmss show -n $vmssName \
-g $rgName \
--query [virtualMachineProfile.securityProfile.encryptionAtHost] -o tsv

Virtuálisgép-méretezési csoport frissítése a gazdagép titkosításának letiltásához

A virtuálisgép-méretezési csoportban letilthatja a gazdagép titkosítását, de ez csak a gazdagép titkosításának letiltása után létrehozott virtuális gépeket érinti. Meglévő virtuális gépek esetén fel kell szabadítania a virtuális gépet, le kell tiltania a titkosítást a gazdagépen az adott virtuális gépen, majd újra kell helyeznie a virtuális gépet.

rgName=yourRGName
vmssName=yourVMName

az vmss update -n $vmssName \
-g $rgName \
--set virtualMachineProfile.securityProfile.encryptionAtHost=false

Támogatott virtuálisgép-méretek keresése

Az örökölt virtuálisgép-méretek nem támogatottak. A támogatott virtuálisgép-méretek listáját erőforrás-termékváltozat API-k vagy az Azure PowerShell-modul használatával találja meg. A parancssori felülettel nem találja a támogatott méreteket.

A Resource Skus API meghívásakor ellenőrizze, hogy a EncryptionAtHostSupported képesség értéke True (Igaz).

    {
        "resourceType": "virtualMachines",
        "name": "Standard_DS1_v2",
        "tier": "Standard",
        "size": "DS1_v2",
        "family": "standardDSv2Family",
        "locations": [
        "CentralUSEUAP"
        ],
        "capabilities": [
        {
            "name": "EncryptionAtHostSupported",
            "value": "True"
        }
        ]
    }

Az Azure PowerShell-modulhoz használja a Get-AzComputeResourceSku parancsmagot.

$vmSizes=Get-AzComputeResourceSku | where{$_.ResourceType -eq 'virtualMachines' -and $_.Locations.Contains('CentralUSEUAP')}

foreach($vmSize in $vmSizes)
{
    foreach($capability in $vmSize.capabilities)
    {
        if($capability.Name -eq 'EncryptionAtHostSupported' -and $capability.Value -eq 'true')
        {
            $vmSize

        }

    }
}

Következő lépések

Most, hogy létrehozta és konfigurálta ezeket az erőforrásokat, használhatja őket a felügyelt lemezek védelmére. Az alábbi hivatkozás példaszkripteket tartalmaz, amelyek mindegyike rendelkezik egy adott forgatókönyvvel, amelyekkel biztonságossá teheti a felügyelt lemezeket.

Azure Resource Manager-sablonminták