Beveiligd Bestandssysteem

Uit Linuxdocs.nl
Ga naar: navigatie, zoeken
Door:Laurens Vonder
Versie:5

Voorwoord

In alle situaties wordt uitgegaan van het uitvoeren van commando's als root, tenzij anders aangegeven. Sudoers dienen voor elk commando 'sudo ' te plaatsen.

Inleiding

Deze pagina is een vrije vertaling vanuit de officiële Softpedia wiki.

Er zijn verschillende redenen om een bestandssysteem te coderen. Of nu wel of niet een goede hardware beschikbaar is om de bestanden veilig op te slaan of laptops met gevoelige informatie (bijvoorbeeld van klanten of patiënten) waarbij diefstal om welke reden dan ook desastreuse gevolgen kan hebben is het wenselijk een bestandssysteem te creëren dat onleesbaar is zonder opgaaf van het juiste wachtwoord of de juiste code.

Het oorspronkelijke artikel geeft een uitleg hoe dit te doen bij een Fedora Core Linux systeem met enkel interne Fedora software. De bedoeling is dit artikel in de loop der tijd dusdanig uit te breiden dat het ook toe te passen is op Debian gebaseerde systemen.

Aanmaak van het gecodeerde bestandssysteem

Allereerst laden we de loop blockdevice adaptor door onderstaand commando uit te voeren:

modprobe cryptoloop && lsmod | grep cryptoloop

Indien dit goed gaat zal er een lijst verschijnen met cryptoloop als geladen kernel module er in.

Vervolgens zal het algorithme gekozen moeten worden dat gebruikt gaat worden voor het bestandssysteem. Voer onderstaand commando uit om een overzicht te verkrijgen welke algorithmen er op het systeem beschikbaar zijn. In dit geval gaan we uit van een 2.6.28-1 kernel. Voer de juiste kernelversie in bij ingave van onderstaand commando:

modinfo /lib/modules/2.6.18-1/kernel/crypto/*

Om de kernel versie te achterhalen kan onderstaand commando worden gebruikt:

uname -r.

Nu zal er een bestand als blok gecreërd moeten worden dat als bestandssysteem zal dienen. De grootte hangt af van de toepassing, echter mag het bestand nooit groter zijn dan de partitie waar deze in geplaatst wordt. Als voorbeeld nemen we een 650 MB blok dat rechtstreeks op een CD-R gebrand kan worden.

dd if=/dev/zero bs=1k count=665600 of=/root/secure

De volgende stap is het herkennen van dit bestandsblok met het type codering en een wachtwoord kiezen om het bestandssysteem toegankelijk te maken en uiteindelijk een ext3 bestandssysteem erin te plaatsen. Het laatste karakter van /dev/loop0 is een nul, geen hoofdletter O. Bij het uitvoeren van het eerste commando zal een wachtwoord worden gevraagd. Dit wachtwoord zal worden gebruikt om het bestandssysteem in een later stadium aan te koppelen. Verlies van dit wachtwoord betekent verlies van alle gegevens op deze partitie!

losetup -e serpent /dev/loop0 /root/secure
mkfs.ext3 /dev/loop0

Nu is het tijd om het gecodeerde bestandssysteem aan te koppelen en het bestandssysteem in te richten:

mkdir /mnt/secure
mount -t ext3 /dev/loop0 /mnt/secure

Als alles goed is gegaan zullen alle bestanden opgeslagen in de directory /mnt/secure gecodeerd worden. Na het verplaatsen van gevoelige informatie naar deze partitie kan deze als volgt afgekoppeld en uitgeschakeld worden:

umount /mnt/secure
losetup -d /dev/loop0
sync

Het aankoppelen van het gecodeerde bestandssysteem gaat met de volgende commando' s:

losetup -e serpent /dev/loop0 /root/secure
(you will be asked for the encrypt password you've set earlier)
mount -t ext3 /dev/loop0 /mnt/secure

Opmerking: Indien het verkeerde wachtwoord ingevoerd wordt zal het aankoppelen mislukken en zal eerst een afkoppelprocedure moeten volgen alvorens opnieuw aan te koppelen. Afkoppelen gaat dan als volgt: losetup -d /dev/loop0

Dagelijks gebruik van het gecodeerde bestandssysteem

Om dingen sneller en eenvoudiger te maken zijn deze commando's in het bash script /root/.bashrc te plaatsen:

alias mountsecure='losetup -e serpent /dev/loop0 /root/secure; mount -t ext3 /dev/loop0 /mnt/secure'
alias umountsecure='umount /dev/loop0; losetup -d /dev/loop0; sync'

Nadat deze regels ingevoegd zijn is na inloggen in een bash console deze actief en is de beveiligde partitie als root snel en handig aan te koppelen:

# mountsecure
(voer het wachtwoord in)

En afkoppelen gaat dan nog eenvoudiger:

# umountsecure



How-TO's | Hoofdpagina | Linux Nieuws | Externe links | Help