Encryptie

Linux-bestandsversleuteling

Linux-bestandsversleuteling
We leven in een wereld waar privacy en veiligheid steeds belangrijker worden. Bijna elke dag is er nieuws over een datalek of een lek. Hoewel er andere maatregelen zijn die u kunt nemen om uw gegevens te beschermen, is het versleutelen van bestanden een van de meest voor de hand liggende.

Alternatieven voor bestandscodering.

Laten we, voordat we dieper ingaan op bestandsversleuteling, de alternatieven bekijken en kijken of de bestandsversleuteling geschikt is voor uw behoeften. Gevoelige gegevens kunnen op verschillende granulariteitsniveaus worden versleuteld: volledige schijfversleuteling, bestandssysteemniveau, databaseniveau en applicatieniveau. Dit artikel doet goed werk door deze benaderingen te vergelijken. Laten we ze samenvatten.

Volledige schijfversleuteling (FDE) is zinvol voor apparaten die gevoelig zijn voor fysiek verlies of diefstal, zoals laptops. Maar FDE gaat uw gegevens niet tegen veel anders beschermen, inclusief hackpogingen op afstand en is niet geschikt voor het versleutelen van individuele bestanden.

In het geval van versleuteling op bestandssysteemniveau voert het bestandssysteem de versleuteling rechtstreeks uit. Dit kan worden bereikt door een cryptografisch bestandssysteem op het hoofdsysteem te stapelen of het kan worden ingebouwd. Volgens dit wiki, enkele van de voordelen zijn: elk bestand kan worden versleuteld met een aparte sleutel (beheerd door het systeem) en extra toegangscontrole door cryptografie met openbare sleutels. Dit vereist natuurlijk een aanpassing van de OS-configuratie en is mogelijk niet geschikt voor alle gebruikers. Het biedt echter bescherming die geschikt is voor de meeste situaties en is relatief eenvoudig te gebruiken. Het zal hieronder worden behandeld.

De codering op databaseniveau kan gericht zijn op specifieke delen van gegevens, zoals een specifieke kolom in een tabel. Dit is echter een gespecialiseerde tool die zich bezighoudt met bestandsinhoud in plaats van hele bestanden en valt dus buiten het bestek van dit artikel.

Versleuteling op applicatieniveau, kan optimaal zijn wanneer beveiligingsbeleid vereist dat specifieke gegevens worden beschermd. Een applicatie kan encryptie gebruiken om gegevens op vele manieren te beschermen, en het coderen van een bestand is daar zeker een van. We zullen hieronder een toepassing bespreken voor het versleutelen van bestanden:.

Een bestand coderen met een applicatie

Er zijn verschillende tools beschikbaar voor het versleutelen van bestanden onder Linux. Dit artikel somt de meest voorkomende alternatieven op.  Vanaf vandaag lijkt de GnuPG de meest voor de hand liggende keuze. Waarom? Omdat de kans groot is dat het al op uw systeem is geïnstalleerd (in tegenstelling tot ccrypt), de opdrachtregel eenvoudig is (in tegenstelling tot het rechtstreeks gebruiken van openssl), dat het zeer actief wordt ontwikkeld en is geconfigureerd om een ​​up-to-date codering te gebruiken (vanaf vandaag AES256 ).

Als u gpg niet hebt geïnstalleerd, kunt u het installeren door een pakketbeheerder te gebruiken die geschikt is voor uw platform, zoals apt-get:

pi@raspberrypi:~ $ sudo apt-get install gpg
Pakketlijsten lezen... Klaar
Afhankelijkheidsboom bouwen
Statusinformatie lezen... Klaar

Versleutel een bestand met GnuPG:

pi@raspberrypi:~ $ kattengeheim.tekst
Topgeheime dingen!
pi@raspberrypi:~ $ gpg -c geheim.tekst
pi@raspberrypi:~ $ bestandsgeheim.tekst.gpg
geheim.tekst.gpg: GPG symmetrisch versleutelde gegevens (AES256-codering)
pi@raspberrypi:~ $ rm secret.tekst

Nu, om te decoderen:

pi@raspberrypi:~ $ gpg --decrypt secret.tekst.gpg >geheim.tekst
gpg: AES256 versleutelde gegevens
gpg: versleuteld met 1 wachtwoordzin
pi@raspberrypi:~ $ kattengeheim.tekst
Topgeheime dingen!

Let op "AES256" hierboven. Dit is de code die wordt gebruikt voor het versleutelen van het bestand in het bovenstaande voorbeeld example. Het is een 256 bit block-sized (voorlopig veilig) variant van de "Advanced Encryption Standard" (ook bekend als Rijndae) cypher suit. Kijk hier eens naar Wikipedia-artikel voor meer informatie.

Versleuteling op bestandssysteemniveau instellen

Volgens dit fscrypt wiki-pagina, ext4-bestandssysteem heeft ingebouwde ondersteuning voor bestandscodering. Het maakt gebruik van fscrypt API om te communiceren met de OS-kernel (ervan uitgaande dat de coderingsfunctie is ingeschakeld). Het past de codering toe op directoryniveau. Het systeem kan worden geconfigureerd om verschillende sleutels voor verschillende mappen te gebruiken. Wanneer een directory is versleuteld, geldt dat ook voor alle bestandsnaamgerelateerde gegevens (en metadata), zoals bestandsnamen, hun inhoud en subdirectories. Metadata die geen bestandsnaam zijn, zoals tijdstempels, zijn vrijgesteld van versleuteling. Let op: deze functionaliteit is beschikbaar gekomen in Linux 4.1 release.

Terwijl dit Leesmij heeft instructies, hier is een kort overzicht. Het systeem houdt zich aan de concepten "beschermers" en "beleid". "Beleid" is een echte sleutel die wordt gebruikt (door de OS-kernel) voor het versleutelen van een map. "Protector" is een wachtwoordzin van een gebruiker of een equivalent dat wordt gebruikt om beleidsregels te beschermen. Met dit systeem op twee niveaus kan de toegang van gebruikers tot mappen worden gecontroleerd zonder elke keer dat er een wijziging in de gebruikersaccounts is, opnieuw te moeten versleutelen.

Een veelvoorkomend gebruik zou het opzetten van een fscrypt-beleid zijn om de thuismap van de gebruiker te versleutelen met hun login-wachtzinnen (verkregen via PAM) als beschermer. Dit zou een extra beveiligingsniveau toevoegen en de gebruikersgegevens beschermen, zelfs als de aanvaller erin zou slagen om beheerderstoegang tot het systeem te krijgen. Hier is een voorbeeld dat illustreert hoe het instellen eruit zou zien:

pi@raspberrypi:~ $ fscrypt encrypt ~/secret_stuff/
Moeten we een nieuwe beschermer maken?? [j/N] ja
De volgende beschermingsbronnen zijn beschikbaar:
1 - Uw wachtwoordzin voor inloggen (pam_passphrase)
2 - Een aangepaste wachtwoordzin (custom_passphrase)
3 - Een onbewerkte 256-bits sleutel (ruwe_sleutel)
Voer het bronnummer in voor de nieuwe beschermer [2 - custom_passphrase]: 1
Voer login wachtwoordzin in voor pi:
"/home/pi/secret_stuff" is nu versleuteld, ontgrendeld en klaar voor gebruik.

Dit kan volledig transparant zijn voor de gebruiker zodra het is ingesteld. De gebruiker kan een extra beveiligingsniveau aan sommige submappen toevoegen door er verschillende beschermers voor op te geven.

Conclusie

Versleuteling is een diep en complex onderwerp en er is veel meer te behandelen en het is ook een snel groeiend veld, vooral met de komst van kwantumcomputing. Het is van cruciaal belang om op de hoogte te blijven van nieuwe technologische ontwikkelingen, want wat vandaag veilig is, kan binnen een paar jaar worden gekraakt. Wees volhardend en let op het nieuws.

Geciteerde werken

Open source-poorten van commerciële game-engines
Gratis, open source en platformonafhankelijke game-engine-recreaties kunnen worden gebruikt om zowel oude als enkele van de vrij recente gametitels te...
Beste opdrachtregelspellen voor Linux
De opdrachtregel is niet alleen je grootste bondgenoot bij het gebruik van Linux, hij kan ook de bron van entertainment zijn omdat je hem kunt gebruik...
Beste gamepad-toewijzingsapps voor Linux
Als je graag games op Linux speelt met een gamepad in plaats van een typisch toetsenbord- en muisinvoersysteem, zijn er enkele handige apps voor jou. ...