Dela via


Verifiera krypteringsstatus för Linux

Gäller för: ✔️ Flexibla skalningsuppsättningar för virtuella Linux-datorer ✔️

Omfånget för den här artikeln är att verifiera krypteringsstatusen för en virtuell dator med hjälp av olika metoder: Azure Portal, PowerShell, Azure CLI eller operativsystemet för den virtuella datorn (VM).

Du kan verifiera krypteringsstatusen under eller efter krypteringen genom att antingen:

  • Kontrollera de diskar som är anslutna till en viss virtuell dator.
  • Fråga krypteringsinställningarna på varje disk, oavsett om disken är ansluten eller inte.

Det här scenariot gäller för Tillägg med dubbla pass och enkel pass för Azure Disk Encryption. Linux-distributioner är den enda miljön för det här scenariot.

Kommentar

Vi använder variabler i hela artikeln. Ersätt värdena i enlighet med detta.

Portalen

I Azure Portal går du till avsnittet Tillägg och väljer tillägget Azure Disk Encryption i listan. Informationen för statusmeddelandet anger aktuell krypteringsstatus:

Portalkontroll med status, version och statusmeddelande markerat

I listan över tillägg visas motsvarande Version av Azure Disk Encryption-tillägget. Version 0.x motsvarar dubbel passering i Azure Disk Encryption och version 1.x motsvarar enkel passering i Azure Disk Encryption.

Du kan få mer information genom att välja tillägget och sedan välja Visa detaljerad status. Krypteringsprocessens detaljerade status visas i JSON-format.

Portalkontroll med länken

Detaljerad status i JSON-format

Ett annat sätt att verifiera krypteringsstatusen är genom att titta på avsnittet Diskinställningar .

Krypteringsstatus för OS-diskar och datadiskar

Kommentar

Den här statusen innebär att diskarna har krypteringsinställningar stämplade, inte att de faktiskt krypterades på OS-nivå.

Enligt design stämplas diskarna först och krypteras senare. Om krypteringsprocessen misslyckas kan diskarna bli stämplade men inte krypterade.

För att kontrollera om diskarna verkligen är krypterade kan du dubbelkolla krypteringen för varje disk på OS-nivå.

PowerShell

Du kan verifiera den allmänna krypteringsstatusen för en krypterad virtuell dator med hjälp av följande PowerShell-kommandon:

   $VMNAME="VMNAME"
   $RGNAME="RGNAME"
   Get-AzVmDiskEncryptionStatus -ResourceGroupName  ${RGNAME} -VMName ${VMNAME}

Allmän krypteringsstatus i PowerShell

Du kan samla in krypteringsinställningarna från varje disk med hjälp av följande PowerShell-kommandon.

Enkel passering

I ett enda pass stämplas krypteringsinställningarna på var och en av diskarna (operativsystem och data). Du kan avbilda krypteringsinställningarna för en OS-disk i ett enda pass på följande sätt:

$RGNAME = "RGNAME"
$VMNAME = "VMNAME"

$VM = Get-AzVM -Name ${VMNAME} -ResourceGroupName ${RGNAME}
 $Sourcedisk = Get-AzDisk -ResourceGroupName ${RGNAME} -DiskName $VM.StorageProfile.OsDisk.Name
 Write-Host "============================================================================================================================================================="
 Write-Host "Encryption Settings:"
 Write-Host "============================================================================================================================================================="
 Write-Host "Enabled:" $Sourcedisk.EncryptionSettingsCollection.Enabled
 Write-Host "Version:" $Sourcedisk.EncryptionSettingsCollection.EncryptionSettingsVersion
 Write-Host "Source Vault:" $Sourcedisk.EncryptionSettingsCollection.EncryptionSettings.DiskEncryptionKey.SourceVault.Id
 Write-Host "Secret URL:" $Sourcedisk.EncryptionSettingsCollection.EncryptionSettings.DiskEncryptionKey.SecretUrl
 Write-Host "Key URL:" $Sourcedisk.EncryptionSettingsCollection.EncryptionSettings.KeyEncryptionKey.KeyUrl
 Write-Host "============================================================================================================================================================="

Krypteringsinställningar för en OS-disk

Om disken inte har några krypteringsinställningar stämplade är utdata tomma:

Tomma utdata

Använd följande kommandon för att samla in krypteringsinställningar för datadiskar:

$RGNAME = "RGNAME"
$VMNAME = "VMNAME"

$VM = Get-AzVM -Name ${VMNAME} -ResourceGroupName ${RGNAME}
 clear
 foreach ($i in $VM.StorageProfile.DataDisks|ForEach-Object{$_.Name})
 {
 Write-Host "============================================================================================================================================================="
 Write-Host "Encryption Settings:"
 Write-Host "============================================================================================================================================================="
 Write-Host "Checking Disk:" $i
 $Disk=(Get-AzDisk -ResourceGroupName ${RGNAME} -DiskName $i)
 Write-Host "Encryption Enable: " $Sourcedisk.EncryptionSettingsCollection.Enabled
 Write-Host "Encryption KeyEncryptionKey: " $Sourcedisk.EncryptionSettingsCollection.EncryptionSettings.KeyEncryptionKey.KeyUrl;
 Write-Host "Encryption DiskEncryptionKey: " $Sourcedisk.EncryptionSettingsCollection.EncryptionSettings.DiskEncryptionKey.SecretUrl;
 Write-Host "============================================================================================================================================================="
 }

Krypteringsinställningar för datadiskar

Dubbelpassning

I ett dubbelpass stämplas krypteringsinställningarna i VM-modellen och inte på varje enskild disk.

Kontrollera att krypteringsinställningarna har stämplats i ett dubbelt pass genom att använda följande kommandon:

$RGNAME = "RGNAME"
$VMNAME = "VMNAME"

$vm = Get-AzVm -ResourceGroupName ${RGNAME} -Name ${VMNAME};
$Sourcedisk = Get-AzDisk -ResourceGroupName ${RGNAME} -DiskName $VM.StorageProfile.OsDisk.Name
clear
Write-Host "============================================================================================================================================================="
Write-Host "Encryption Settings:"
Write-Host "============================================================================================================================================================="
Write-Host "Enabled:" $Sourcedisk.EncryptionSettingsCollection.Enabled
Write-Host "Version:" $Sourcedisk.EncryptionSettingsCollection.EncryptionSettingsVersion
Write-Host "Source Vault:" $Sourcedisk.EncryptionSettingsCollection.EncryptionSettings.DiskEncryptionKey.SourceVault.Id
Write-Host "Secret URL:" $Sourcedisk.EncryptionSettingsCollection.EncryptionSettings.DiskEncryptionKey.SecretUrl
Write-Host "Key URL:" $Sourcedisk.EncryptionSettingsCollection.EncryptionSettings.KeyEncryptionKey.KeyUrl
Write-Host "============================================================================================================================================================="

Ej anslutna diskar

Kontrollera krypteringsinställningarna för diskar som inte är anslutna till en virtuell dator.

Hanterade diskar

$Sourcedisk = Get-AzDisk -ResourceGroupName ${RGNAME} -DiskName ${TARGETDISKNAME}
Write-Host "============================================================================================================================================================="
Write-Host "Encryption Settings:"
Write-Host "============================================================================================================================================================="
Write-Host "Enabled:" $Sourcedisk.EncryptionSettingsCollection.Enabled
Write-Host "Version:" $Sourcedisk.EncryptionSettingsCollection.EncryptionSettingsVersion
Write-Host "Source Vault:" $Sourcedisk.EncryptionSettingsCollection.EncryptionSettings.DiskEncryptionKey.SourceVault.Id
Write-Host "Secret URL:" $Sourcedisk.EncryptionSettingsCollection.EncryptionSettings.DiskEncryptionKey.SecretUrl
Write-Host "Key URL:" $Sourcedisk.EncryptionSettingsCollection.EncryptionSettings.KeyEncryptionKey.KeyUrl
Write-Host "============================================================================================================================================================="

Azure CLI

Du kan verifiera den allmänna krypteringsstatusen för en krypterad virtuell dator med hjälp av följande Azure CLI-kommandon:

VMNAME="VMNAME"
RGNAME="RGNAME"
az vm encryption show --name ${VMNAME} --resource-group ${RGNAME} --query "substatus"

Allmän krypteringsstatus från Azure CLI

Enkel passering

Du kan verifiera krypteringsinställningarna för varje disk med hjälp av följande Azure CLI-kommandon:

az vm encryption show -g ${RGNAME} -n ${VMNAME} --query "disks[*].[name, statuses[*].displayStatus]"  -o table

Inställningar för datakryptering

Viktigt!

Om disken inte har några krypteringsinställningar stämplade ser du att texten Disk inte är krypterad.

Använd följande kommandon för att hämta detaljerade status- och krypteringsinställningar.

OS-disk:

RGNAME="RGNAME"
VMNAME="VNAME"

disk=`az vm show -g ${RGNAME} -n ${VMNAME} --query storageProfile.osDisk.name -o tsv`
for disk in $disk; do \
echo "============================================================================================================================================================="
echo -ne "Disk Name: "; az disk show -g ${RGNAME} -n ${disk} --query name -o tsv; \
echo -ne "Encryption Enabled: "; az disk show -g ${RGNAME} -n ${disk} --query encryptionSettingsCollection.enabled -o tsv; \
echo -ne "Version: "; az disk show -g ${RGNAME} -n ${TARGETDISKNAME} --query encryptionSettingsCollection.encryptionSettingsVersion -o tsv; \
echo -ne "Disk Encryption Key: "; az disk show -g ${RGNAME} -n ${disk} --query encryptionSettingsCollection.encryptionSettings[].diskEncryptionKey.secretUrl -o tsv; \
echo -ne "key Encryption Key: "; az disk show -g ${RGNAME} -n ${disk} --query encryptionSettingsCollection.encryptionSettings[].keyEncryptionKey.keyUrl -o tsv; \
echo "============================================================================================================================================================="
done

Detaljerade status- och krypteringsinställningar för OS-disken

Datadiskar:

RGNAME="RGNAME"
VMNAME="VMNAME"
az vm encryption show --name ${VMNAME} --resource-group ${RGNAME} --query "substatus"

for disk in `az vm show -g ${RGNAME} -n ${VMNAME} --query storageProfile.dataDisks[].name -o tsv`; do \
echo "============================================================================================================================================================="; \
echo -ne "Disk Name: "; az disk show -g ${RGNAME} -n ${disk} --query name -o tsv; \
echo -ne "Encryption Enabled: "; az disk show -g ${RGNAME} -n ${disk} --query encryptionSettingsCollection.enabled -o tsv; \
echo -ne "Version: "; az disk show -g ${RGNAME} -n ${TARGETDISKNAME} --query encryptionSettingsCollection.encryptionSettingsVersion -o tsv; \
echo -ne "Disk Encryption Key: "; az disk show -g ${RGNAME} -n ${disk} --query encryptionSettingsCollection.encryptionSettings[].diskEncryptionKey.secretUrl -o tsv; \
echo -ne "key Encryption Key: "; az disk show -g ${RGNAME} -n ${disk} --query encryptionSettingsCollection.encryptionSettings[].keyEncryptionKey.keyUrl -o tsv; \
echo "============================================================================================================================================================="
done

Detaljerade status- och krypteringsinställningar för datadiskarna

Dubbelpassning

az vm encryption show --name ${VMNAME} --resource-group ${RGNAME} -o table

Allmänna krypteringsinställningar för dubbel passering via Azure CLI

Du kan också kontrollera krypteringsinställningarna på VM Model Storage-profilen för OS-disken:

disk=`az vm show -g ${RGNAME} -n ${VMNAME} --query storageProfile.osDisk.name -o tsv`
for disk in $disk; do \
echo "============================================================================================================================================================="; \
echo -ne "Disk Name: "; az disk show -g ${RGNAME} -n ${disk} --query name -o tsv; \
echo -ne "Encryption Enabled: "; az disk show -g ${RGNAME} -n ${disk} --query encryptionSettingsCollection.enabled -o tsv; \
echo -ne "Version: "; az disk show -g ${RGNAME} -n ${TARGETDISKNAME} --query encryptionSettingsCollection.encryptionSettingsVersion -o tsv; \
echo -ne "Disk Encryption Key: "; az disk show -g ${RGNAME} -n ${disk} --query encryptionSettingsCollection.encryptionSettings[].diskEncryptionKey.secretUrl -o tsv; \
echo -ne "key Encryption Key: "; az disk show -g ${RGNAME} -n ${disk} --query encryptionSettingsCollection.encryptionSettings[].keyEncryptionKey.keyUrl -o tsv; \
echo "============================================================================================================================================================="
done

VM-profil för dubbla pass via Azure CLI

Ej anslutna diskar

Kontrollera krypteringsinställningarna för diskar som inte är anslutna till en virtuell dator.

Hanterade diskar

RGNAME="RGNAME"
TARGETDISKNAME="DISKNAME"
echo "============================================================================================================================================================="
echo -ne "Disk Name: "; az disk show -g ${RGNAME} -n ${TARGETDISKNAME} --query name -o tsv; \
echo -ne "Encryption Enabled: "; az disk show -g ${RGNAME} -n ${TARGETDISKNAME} --query encryptionSettingsCollection.enabled -o tsv; \
echo -ne "Version: "; az disk show -g ${RGNAME} -n ${TARGETDISKNAME} --query encryptionSettingsCollection.encryptionSettingsVersion -o tsv; \
echo -ne "Disk Encryption Key: "; az disk show -g ${RGNAME} -n ${TARGETDISKNAME} --query encryptionSettingsCollection.encryptionSettings[].diskEncryptionKey.secretUrl -o tsv; \
echo -ne "key Encryption Key: "; az disk show -g ${RGNAME} -n ${TARGETDISKNAME} --query encryptionSettingsCollection.encryptionSettings[].keyEncryptionKey.keyUrl -o tsv; \
echo "============================================================================================================================================================="

Ohanterade diskar

Ohanterade diskar är VHD-filer som lagras som sidblobar i Azure Storage-konton.

För att få information om en viss disk måste du ange:

  • ID för lagringskontot som innehåller disken.
  • En anslutningssträng för just det lagringskontot.
  • Namnet på containern som lagrar disken.
  • Disknamnet.

Det här kommandot visar alla ID:t för alla dina lagringskonton:

az storage account list --query [].[id] -o tsv

Lagringskonto-ID:t visas i följande formulär:

/subscriptions/<subscription id>/resourceGroups/<resource group name>/providers/Microsoft.Storage/storageAccounts/<storage account name>

Välj lämpligt ID och lagra det på en variabel:

id="/subscriptions/<subscription id>/resourceGroups/<resource group name>/providers/Microsoft.Storage/storageAccounts/<storage account name>"

Det här kommandot hämtar anslutningssträng för ett visst lagringskonto och lagrar det på en variabel:

ConnectionString=$(az storage account show-connection-string --ids $id --query connectionString -o tsv)

Följande kommando visar alla containrar under ett lagringskonto:

az storage container list --connection-string $ConnectionString --query [].[name] -o tsv

Containern som används för diskar heter vanligtvis "vhds".

Lagra containernamnet på en variabel:

ContainerName="name of the container"

Använd det här kommandot om du vill visa en lista över alla blobar i en viss container:

az storage blob list -c ${ContainerName} --connection-string $ConnectionString --query [].[name] -o tsv

Välj den disk som du vill köra frågor mot och lagra dess namn på en variabel:

DiskName="diskname.vhd"

Fråga diskkrypteringsinställningarna:

az storage blob show -c ${ContainerName} --connection-string ${ConnectionString} -n ${DiskName} --query metadata.DiskEncryptionSettings

Operativsystem

Kontrollera om datadiskpartitionerna är krypterade (och os-disken inte är det).

När en partition eller disk krypteras visas den som en krypttyp . När den inte är krypterad visas den som en del/disktyp .

sudo lsblk

OS-kryptlager för en partition

Du kan få mer information med hjälp av följande lsblk-variant .

Du ser ett krypttyplager som monteras av tillägget. I följande exempel visas logiska volymer och normala diskar som har crypto_LUKS FSTYPE.

sudo lsblk -o NAME,TYPE,FSTYPE,LABEL,SIZE,RO,MOUNTPOINT

Kryptlager för operativsystemet för logiska volymer och normala diskar

Som ett extra steg kan du kontrollera om datadisken har några inlästa nycklar:

sudo cryptsetup luksDump /dev/VGNAME/LVNAME
sudo cryptsetup luksDump /dev/sdd1

Och du kan kontrollera vilka DM-enheter som anges som krypta:

sudo dmsetup ls --target crypt

Nästa steg