Megosztás a következőn keresztül:


Az LVM és a RAID konfigurálása titkosított eszközökön

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

Ez a cikk lépésről lépésre ismerteti, hogyan hajthatja végre a logikai kötetkezelést (LVM) és a RAID-et titkosított eszközökön. A folyamat a következő környezetekre vonatkozik:

  • Linux-disztribúciók
    • RHEL 7.6+
    • Ubuntu 18.04+
    • SUSE 12+
  • Azure Disk Encryption egyátadásos bővítmény
  • Az Azure Disk Encryption kétáteresztős bővítménye

Forgatókönyvek

A cikkben szereplő eljárások a következő forgatókönyveket támogatják:

  • Az LVM konfigurálása titkosított eszközökön (LVM-on-crypt)
  • RAID konfigurálása titkosított eszközökön (RAID-on-crypt)

A mögöttes eszköz vagy eszközök titkosítása után létrehozhatja az LVM- vagy RAID-struktúrákat a titkosított réteg tetején.

A fizikai kötetek (PV-k) a titkosított réteg tetején jönnek létre. A rendszer a fizikai köteteket használja a kötetcsoport létrehozásához. Hozza létre a köteteket, és adja hozzá a szükséges bejegyzéseket a /etc/fstab fájlhoz.

LVM-struktúrák rétegeinek diagramja

Hasonló módon a RAID-eszköz a lemezek titkosított rétegén jön létre. A RAID-eszköz tetején létrejön egy fájlrendszer, és normál eszközként hozzáadva az /etc/fstab fájlhoz.

Megfontolások

Javasoljuk, hogy használja az LVM-on-crypt-t. A RAID egy lehetőség, ha az LVM adott alkalmazás- vagy környezeti korlátozások miatt nem használható.

A EncryptFormatAll lehetőséget fogja használni. Erről a beállításról további információt a Linux rendszerű virtuális gépeken futó adatlemezek TitkosításformatAll funkciójának használata című témakörben talál.

Bár ezt a módszert az operációs rendszer titkosításakor is használhatja, itt csak az adatmeghajtókat titkosítjuk.

Az eljárások feltételezik, hogy már áttekintette a Linux rendszerű virtuális gépekEn futó Azure Disk Encryption-forgatókönyvekben és a Linux rendszerű virtuális gépek azure cli-vel történő létrehozását és titkosítását ismertető rövid útmutatóban szereplő előfeltételeket.

Az Azure Disk Encryption kettős továbbítású verziója elavult, és többé nem használható új titkosításokon.

Általános lépések

Az "on-crypt" konfigurációk használatakor használja az alábbi eljárásokban ismertetett folyamatot.

Feljegyzés

A cikk során változókat használunk. Cserélje le az értékeket ennek megfelelően.

Virtuális gép üzembe helyezése

Az alábbi parancsok nem kötelezőek, de javasoljuk, hogy alkalmazza őket egy újonnan üzembe helyezett virtuális gépen (VM).

PowerShell:

New-AzVm -ResourceGroupName ${RGNAME} `
-Name ${VMNAME} `
-Location ${LOCATION} `
-Size ${VMSIZE} `
-Image ${OSIMAGE} `
-Credential ${creds} `
-Verbose

Azure CLI:

az vm create \
-n ${VMNAME} \
-g ${RGNAME} \
--image ${OSIMAGE} \
--admin-username ${username} \
--admin-password ${password} \
-l ${LOCATION} \
--size ${VMSIZE} \
-o table

Lemezek csatolása a virtuális géphez

Ismételje meg a következő parancsokat $N a virtuális géphez csatolni kívánt új lemezek számához.

PowerShell:

$storageType = 'Standard_LRS'
$dataDiskName = ${VMNAME} + '_datadisk0'
$diskConfig = New-AzDiskConfig -SkuName $storageType -Location $LOCATION -CreateOption Empty -DiskSizeGB 5
$dataDisk1 = New-AzDisk -DiskName $dataDiskName -Disk $diskConfig -ResourceGroupName ${RGNAME}
$vm = Get-AzVM -Name ${VMNAME} -ResourceGroupName ${RGNAME}
$vm = Add-AzVMDataDisk -VM $vm -Name $dataDiskName -CreateOption Attach -ManagedDiskId $dataDisk1.Id -Lun 0
Update-AzVM -VM ${VM} -ResourceGroupName ${RGNAME}

Azure CLI:

az vm disk attach \
-g ${RGNAME} \
--vm-name ${VMNAME} \
--name ${VMNAME}datadisk1 \
--size-gb 5 \
--new \
-o table

Ellenőrizze, hogy a lemezek csatlakoztatva vannak-e a virtuális géphez

PowerShell:

$VM = Get-AzVM -ResourceGroupName ${RGNAME} -Name ${VMNAME}
$VM.StorageProfile.DataDisks | Select-Object Lun,Name,DiskSizeGB

Csatolt lemezek listája a PowerShellben

Azure CLI:

az vm show -g ${RGNAME} -n ${VMNAME} --query storageProfile.dataDisks -o table

Csatolt lemezek listája az Azure CLI-ben

Portál:

Csatolt lemezek listája a portálon

Operációs rendszer:

lsblk

A csatlakoztatott lemezek listája az operációs rendszerben

A lemezek titkosításának konfigurálása

Ez a konfiguráció az operációs rendszer szintjén történik. A megfelelő lemezek hagyományos titkosításhoz vannak konfigurálva az Azure Disk Encryption használatával:

  • A fájlrendszerek a lemezek tetején jönnek létre.
  • Ideiglenes csatlakoztatási pontok jönnek létre a fájlrendszerek csatlakoztatásához.
  • A fájlrendszerek a /etc/fstab rendszeren vannak konfigurálva, hogy a rendszerindításkor csatlakoztatva legyenek.

Ellenőrizze az új lemezekhez rendelt eszközbetűjelet. Ebben a példában négy adatlemezt használunk.

lsblk

Az operációs rendszerhez csatlakoztatott adatlemezek

Fájlrendszer létrehozása minden lemezen

Ez a parancs iterálja az ext4 fájlrendszer létrehozását a "for" ciklus "in" részén definiált lemezeken.

for disk in c d e f; do echo mkfs.ext4 -F /dev/sd${disk}; done |bash

Ext4 fájlrendszer létrehozása

Keresse meg a nemrég létrehozott fájlrendszerek univerzálisan egyedi azonosítóját (UUID), hozzon létre egy ideiglenes mappát, adja hozzá a megfelelő bejegyzéseket a /etc/fstab fájlhoz, és csatlakoztassa az összes fájlrendszert.

Ez a parancs a "for" ciklus "in" részén definiált lemezeken is iterál:

for disk in c d e f; do diskuuid="$(blkid -s UUID -o value /dev/sd${disk})"; \
mkdir /tempdata${disk}; \
echo "UUID=${diskuuid} /tempdata${disk} ext4 defaults,nofail 0 0" >> /etc/fstab; \
mount -a; \
done

Ellenőrizze, hogy a lemezek megfelelően vannak-e csatlakoztatva

lsblk

Csatlakoztatott ideiglenes fájlrendszerek listája

Ellenőrizze azt is, hogy a lemezek konfigurálva vannak-e:

cat /etc/fstab

Konfigurációs információk az fstab használatával

Az adatlemezek titkosítása

PowerShell kulcstitkosítási kulccsal (KEK):

$sequenceVersion = [Guid]::NewGuid()
Set-AzVMDiskEncryptionExtension -ResourceGroupName $RGNAME `
-VMName ${VMNAME} `
-DiskEncryptionKeyVaultUrl $diskEncryptionKeyVaultUrl `
-DiskEncryptionKeyVaultId $KeyVaultResourceId `
-KeyEncryptionKeyUrl $keyEncryptionKeyUrl `
-KeyEncryptionKeyVaultId $KeyVaultResourceId `
-VolumeType 'DATA' `
-EncryptFormatAll `
-SequenceVersion $sequenceVersion `
-skipVmBackup;

Azure CLI KEK használatával:

az vm encryption enable \
--resource-group ${RGNAME} \
--name ${VMNAME} \
--disk-encryption-keyvault ${KEYVAULTNAME} \
--key-encryption-key ${KEYNAME} \
--key-encryption-keyvault ${KEYVAULTNAME} \
--volume-type "DATA" \
--encrypt-format-all \
-o table

A titkosítás állapotának ellenőrzése

Csak akkor folytassa a következő lépésekkel, ha az összes lemez titkosítva van.

PowerShell:

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

Titkosítás állapota a PowerShellben

Azure CLI:

az vm encryption show -n ${VMNAME} -g ${RGNAME} -o table

Titkosítás állapota az Azure CLI-ben

Portál:

Titkosítás állapota a portálon

Operációs rendszer szintje:

lsblk

Titkosítás állapota az operációs rendszerben

A bővítmény hozzáadja a fájlrendszereket a /var/lib/azure_disk_encryption_config/azure_crypt_mount (régi titkosítás) vagy a /etc/crypttab (új titkosítások) fájlhoz.

Feljegyzés

Ezeket a fájlokat ne módosítsa.

Ez a fájl gondoskodik a lemezek aktiválásáról a rendszerindítási folyamat során, hogy az LVM vagy a RAID később is használni tudja őket.

Ne aggódjon a fájl csatlakoztatási pontjai miatt. Az Azure Disk Encryption nem tudja normál fájlrendszerként csatlakoztatni a lemezeket, miután fizikai kötetet vagy RAID-eszközt hoztunk létre a titkosított eszközök tetején. (Ezzel eltávolítja az előkészítési folyamat során használt fájlrendszer-formátumot.)

Az ideiglenes mappák és az ideiglenes fstab-bejegyzések eltávolítása

Leválasztja az LVM részeként használt lemezek fájlrendszereit.

for disk in c d e f; do umount /tempdata${disk}; done

És távolítsa el a /etc/fstab bejegyzéseket:

vi /etc/fstab

Ellenőrizze, hogy a lemezek nincsenek-e csatlakoztatva, és hogy a /etc/fstab bejegyzései el lettek távolítva

lsblk

Annak ellenőrzése, hogy az ideiglenes fájlrendszerek nincsenek csatlakoztatva

És ellenőrizze, hogy a lemezek konfigurálva vannak-e:

cat /etc/fstab

Annak ellenőrzése, hogy az ideiglenes fstab-bejegyzések törlődnek-e

Az LVM-on-crypt lépései

Most, hogy a mögöttes lemezek titkosítva vannak, létrehozhatja az LVM-struktúrákat.

Az eszköznév használata helyett használja az egyes lemezek /dev/mapper elérési útjait egy fizikai kötet létrehozásához (a lemez tetején lévő titkosítási rétegen, nem pedig magán a lemezen).

Az LVM konfigurálása a titkosított rétegek tetején

A fizikai kötetek létrehozása

Ekkor megjelenik egy figyelmeztetés, amely megkérdezi, hogy rendben van-e a fájlrendszer aláírásának törlése. Folytassa az y beírásával, vagy használja az "y" visszhangot az alábbi módon:

echo "y" | pvcreate /dev/mapper/c49ff535-1df9-45ad-9dad-f0846509f052
echo "y" | pvcreate /dev/mapper/6712ad6f-65ce-487b-aa52-462f381611a1
echo "y" | pvcreate /dev/mapper/ea607dfd-c396-48d6-bc54-603cf741bc2a
echo "y" | pvcreate /dev/mapper/4159c60a-a546-455b-985f-92865d51158c

Fizikai kötet létrehozásának ellenőrzése

Feljegyzés

Az itt szereplő /dev/mapper/eszközneveket az lsblk kimenete alapján kell lecserélni a tényleges értékekre.

Fizikai kötetek adatainak ellenőrzése

pvs

Fizikai kötetekre vonatkozó információk

A kötetcsoport létrehozása

Hozza létre a kötetcsoportot ugyanazokkal az eszközökkel, amelyeket már inicializált:

vgcreate vgdata /dev/mapper/

A kötetcsoport adatainak ellenőrzése

vgdisplay -v vgdata
pvs

A kötetcsoport adatai

Logikai kötetek létrehozása

lvcreate -L 10G -n lvdata1 vgdata
lvcreate -L 7G -n lvdata2 vgdata

A létrehozott logikai kötetek ellenőrzése

lvdisplay
lvdisplay vgdata/lvdata1
lvdisplay vgdata/lvdata2

Logikai kötetek információi

Fájlrendszerek létrehozása a logikai kötetek struktúráira

echo "yes" | mkfs.ext4 /dev/vgdata/lvdata1
echo "yes" | mkfs.ext4 /dev/vgdata/lvdata2

Csatlakoztatási pontok létrehozása az új fájlrendszerekhez

mkdir /data0
mkdir /data1

Adja hozzá az új fájlrendszereket a /etc/fstab fájlhoz, és csatlakoztassa őket

echo "/dev/mapper/vgdata-lvdata1 /data0 ext4 defaults,nofail 0 0" >>/etc/fstab
echo "/dev/mapper/vgdata-lvdata2 /data1 ext4 defaults,nofail 0 0" >>/etc/fstab
mount -a

Ellenőrizze, hogy az új fájlrendszerek csatlakoztatva vannak-e

lsblk -fs
df -h

Képernyőkép egy konzolablakról, amelyen az adatok0 és az adatokként csatlakoztatott fájlrendszerek1 láthatók.

Az lsblk ezen változatában azokat az eszközöket soroljuk fel, amelyek fordított sorrendben jelenítik meg a függőségeket. Ez a beállítás segít azonosítani a logikai kötet szerint csoportosított eszközöket az eredeti /dev/sd[disk] eszköznevek helyett.

Fontos, hogy a nofail beállítás hozzá legyen adva az Azure Disk Encryption által titkosított eszközre létrehozott LVM-kötetek csatlakoztatási pontbeállításaihoz. Megakadályozza, hogy az operációs rendszer elakadjon a rendszerindítási folyamat során (vagy karbantartási módban).

Ha nem használja a nofail lehetőséget:

  • Az operációs rendszer soha nem kerül abba a fázisba, ahol az Azure Disk Encryption elindul, és az adatlemezek feloldva és csatlakoztatva vannak.
  • A titkosított lemezek zárolása a rendszerindítási folyamat végén lesz feloldva. Az LVM-kötetek és fájlrendszerek automatikusan csatlakoztatva lesznek, amíg az Azure Disk Encryption fel nem oldja őket.

Tesztelheti a virtuális gép újraindítását, és ellenőrizheti, hogy a fájlrendszerek automatikusan csatlakoztatva vannak-e a rendszerindítás után. Ez a folyamat a fájlrendszerek számától és méretétől függően több percet is igénybe vehet.

Indítsa újra a virtuális gépet, és ellenőrizze az újraindítás után

shutdown -r now
lsblk
df -h

A RAID-on-crypt lépései

Most, hogy a mögöttes lemezek titkosítva vannak, továbbra is létrehozhatja a RAID-struktúrákat. A folyamat ugyanaz, mint az LVM esetében, de az eszköznév használata helyett használja az egyes lemezek /dev/mapper elérési útját.

RAID konfigurálása a lemezek titkosított rétegén

mdadm --create /dev/md10 \
--level 0 \
--raid-devices=4 \
/dev/mapper/c49ff535-1df9-45ad-9dad-f0846509f052 \
/dev/mapper/6712ad6f-65ce-487b-aa52-462f381611a1 \
/dev/mapper/ea607dfd-c396-48d6-bc54-603cf741bc2a \
/dev/mapper/4159c60a-a546-455b-985f-92865d51158c

Információk az mdadm parancson keresztül konfigurált RAID-hez

Feljegyzés

Az itt szereplő /dev/mapper/eszközneveket az lsblk kimenete alapján a tényleges értékekre kell cserélni.

RAID-létrehozás ellenőrzése/monitorozása

watch -n1 cat /proc/mdstat
mdadm --examine /dev/mapper/[]
mdadm --detail /dev/md10

A RAID állapota

Fájlrendszer létrehozása az új RAID-eszköz tetején

mkfs.ext4 /dev/md10

Hozzon létre egy új csatlakoztatási pontot a fájlrendszerhez, adja hozzá az új fájlrendszert a /etc/fstab fájlhoz, és csatlakoztassa:

Feljegyzés

Ez a ciklus csak egy eszközön iterál ebben a példában, így több md-eszközhöz is használható, ha szükséges.

for device in md10; do diskuuid="$(blkid -s UUID -o value /dev/${device})"; \
mkdir /raiddata; \
echo "UUID=${diskuuid} /raiddata ext4 defaults,nofail 0 0" >> /etc/fstab; \
mount -a; \
done

Ellenőrizze, hogy az új fájlrendszer csatlakoztatva van-e:

lsblk -fs
df -h

Képernyőkép egy konzolablakról, amelyen a fájlrendszer raiddata-ként van csatlakoztatva.

Fontos, hogy a nofail beállítás hozzá legyen adva az Azure Disk Encryption által titkosított eszköz tetején létrehozott RAID-kötetek csatlakoztatási pontbeállításaihoz. Megakadályozza, hogy az operációs rendszer elakadjon a rendszerindítási folyamat során (vagy karbantartási módban).

Ha nem használja a nofail lehetőséget:

  • Az operációs rendszer soha nem kerül abba a fázisba, ahol az Azure Disk Encryption elindul, és az adatlemezek feloldva és csatlakoztatva vannak.
  • A titkosított lemezek zárolása a rendszerindítási folyamat végén lesz feloldva. A RAID-kötetek és fájlrendszerek automatikusan csatlakoztatva lesznek, amíg az Azure Disk Encryption fel nem oldja őket.

Tesztelheti a virtuális gép újraindítását, és ellenőrizheti, hogy a fájlrendszerek automatikusan csatlakoztatva vannak-e a rendszerindítás után. Ez a folyamat a fájlrendszerek számától és méretétől függően több percet is igénybe vehet.

shutdown -r now

És mikor tud bejelentkezni:

lsblk
df -h

Következő lépések