Sådan opsættes krypterede filsystemer og bytter plads ved hjælp af Cryptsetup-værktøjet i Linux - del 3


En LFCE (forkortelse for Linux Foundation Certified Engineer ) er uddannet og har ekspertisen til at installere, administrere og fejlfinde netværkstjenester i Linux-systemer og har ansvaret for design, implementering og løbende vedligeholdelse af systemarkitekturen.

Introduktion til Linux Foundation Certification Program (LFCE).

Ideen bag kryptering er at give kun betroede personer adgang til dine følsomme data og at beskytte dem mod at falde i de forkerte hænder i tilfælde af tab eller tyveri af din maskine/harddisk.

Enkelt sagt bruges en nøgle til at " låse " adgang til dine oplysninger, så den bliver tilgængelig, når systemet kører og låses op af en autoriseret bruger. Dette indebærer, at hvis en person forsøger at undersøge diskindholdet (tilslutte det til sit eget system eller ved at starte maskinen med en LiveCD/DVD/USB), vil han kun finde ulæselige data i stedet for de faktiske filer.

I denne artikel vil vi diskutere, hvordan man opretter krypterede filsystemer med dm-crypt (forkortelse for enhedskortlægger og kryptografisk), standardkrypteringsværktøjet på kerneniveau. Bemærk, at da dm-crypt er et værktøj på blokniveau, kan det kun bruges til at kryptere fulde enheder, partitioner eller loop-enheder (fungerer ikke på almindelige filer eller kataloger).

Forberedelse af et drev/en partition/en loop-enhed til kryptering

Da vi vil slette alle data, der er til stede i vores valgte drev (/dev/sdb ), skal vi først og fremmest udføre en sikkerhedskopi af alle vigtige filer, der er indeholdt i den partition FØR fortsætter videre.

Tør alle data fra /dev/sdb . Vi skal bruge kommandoen dd her, men du kan også gøre det med andre værktøjer såsom makulering . Dernæst opretter vi en partition på denne enhed, /dev/sdb1 , efter forklaringen i del 4 - Opret partitioner og filsystemer i Linux i LFCS-serien.

# dd if=/dev/urandom of=/dev/sdb bs=4096 

Før vi går videre, skal vi sikre os, at vores kerne er blevet kompileret med krypteringsunderstøttelse:

# grep -i config_dm_crypt /boot/config-$(uname -r)

Som beskrevet i billedet ovenfor skal kernemodulet dm-crypt indlæses for at opsætte kryptering.

Cryptsetup er en frontend-grænseflade til oprettelse, konfiguration, adgang til og styring af krypterede filsystemer ved hjælp af dm-crypt .

# aptitude update && aptitude install cryptsetup 		[On Ubuntu]
# yum update && yum install cryptsetup 				[On CentOS] 
# zypper refresh && zypper install cryptsetup 			[On openSUSE]

Standarddriftstilstanden for cryptsetup er LUKS ( Linux Unified Key Setup ), så vi holder fast ved den. Vi begynder med at indstille LUKS-partitionen og adgangssætningen:

# cryptsetup -y luksFormat /dev/sdb1

Kommandoen ovenfor kører cryptsetup med standardparametre, som kan vises med,

# cryptsetup --version

Ønsker du at ændre parametrene cipher , hash eller key , kan du bruge –cipher , < b hhv. –hash og –nøglestørrelse med værdierne taget fra /proc/crypto .

Dernæst skal vi åbne LUKS-partitionen (vi bliver bedt om den adgangssætning, som vi indtastede tidligere). Hvis godkendelsen lykkes, vil vores krypterede partition være tilgængelig i /dev/mapper med det angivne navn:

# cryptsetup luksOpen /dev/sdb1 my_encrypted_partition

Nu formaterer vi partitionen som ext4 .

# mkfs.ext4 /dev/mapper/my_encrypted_partition

og opret et monteringspunkt for at montere den krypterede partition. Endelig vil vi måske bekræfte, om monteringsoperationen lykkedes.

# mkdir /mnt/enc
# mount /dev/mapper/my_encrypted_partition /mnt/enc
# mount | grep partition

Når du er færdig med at skrive til eller læse fra dit krypterede filsystem, skal du blot afmontere det

# umount /mnt/enc

og luk LUKS-partitionen ved hjælp af,

# cryptesetup luksClose my_encrypted_partition

Endelig vil vi kontrollere, om vores krypterede partition er sikker:

1. Åbn LUKS-partitionen

# cryptsetup luksOpen /dev/sdb1 my_encrypted_partition

2. Indtast din adgangssætning

3. Monter skillevæggen

# mount /dev/mapper/my_encrypted_partition /mnt/enc

4. Opret en dummy-fil inde i monteringspunktet.

# echo “This is Part 3 of a 12-article series about the LFCE certification” > /mnt/enc/testfile.txt

5. Kontroller, at du har adgang til den fil, du lige har oprettet.

# cat /mnt/enc/testfile.txt

6. Afmonter filsystemet.

# umount /mnt/enc

7. Luk LUKS-partitionen.

# cryptsetup luksClose my_encrypted_partition

8. Prøv at montere partitionen som et almindeligt filsystem. Det skulle indikere en fejl.

# mount /dev/sdb1 /mnt/enc

Krypter swap-pladsen for yderligere sikkerhed

Den adgangssætning , du indtastede tidligere for at bruge den krypterede partition, gemmes i RAM hukommelse, mens den er åben. Hvis nogen kan få fat i denne nøgle, vil han være i stand til at dekryptere dataene. Dette er især let at gøre i tilfælde af en bærbar computer, da indholdet af RAM under dvale holdes på swap-partitionen.

For at undgå at lade en kopi af din nøgle være tilgængelig for en tyv, skal du kryptere swap-partitionen ved at følge disse trin:

1 Opret en partition, der skal bruges som swap med den passende størrelse (/dev/sdd1 i vores tilfælde), og krypter den som tidligere forklaret. Navngiv det bare " swap " for nemheds skyld. '

2.Sæt det som swap og aktiver det.

# mkswap /dev/mapper/swap
# swapon /dev/mapper/swap

3. Skift derefter den tilsvarende post i /etc/fstab .

/dev/mapper/swap none        	swap	sw          	0   	0

4. Endelig skal du redigere /etc/crypttab og genstarte.

swap               /dev/sdd1         /dev/urandom swap

Når systemet er startet op, kan du kontrollere status for swap-rummet:

# cryptsetup status swap

Resumé

I denne artikel har vi undersøgt, hvordan man krypterer en partition og bytter plads. Med denne opsætning skal dine data være betydeligt sikre. Du er velkommen til at eksperimentere og tøv ikke med at vende tilbage til os, hvis du har spørgsmål eller kommentarer. Brug bare nedenstående formular - vi er meget glade for at høre fra dig!