Uitbreiding nodig: Dit artikel is onvolledig en moet worden uitgebreid. Meer info... |
Versleutelde 'Private' Map
Geschikt voor: | |
Versie: | 14.04 LTS |
Niet aanbevolen vanaf Ubuntu 18.04 (bug#1756840)
Inleiding
Persoonlijke gegevens van Ubuntu-gebruikers worden leesbaar opgeslagen. De bestanden zijn beveiligd tegen onbevoegd gebruik door toegangsrechten (rechtermuisknop op een map of bestand → Eigenschappen → Rechten) in te stellen en een inlogwachtwoord te gebruiken.
- Standaard zijn persoonlijke gegevens door andere gebruikers van de (dezelfde) Ubuntu computer (niet de gastsessie) te lezen (niet te wijzigen). Wees daarvan bewust bij opslaan van vertrouwelijke gegevens of stel andere toegangsrechten in.
Deze beveiliging heeft 2 zwakke punten:
- In de 'Herstel modus' ('recovery mode') kan zonder wachtwoord worden ingelogd.
- Als de schijf in een andere computer wordt geplaatst kunnen de gegevens zonder wachtwoord worden gelezen. Denk bijvoorbeel aan de harde schijf uit een gestolen laptop.
Ubuntu heeft de mogelijkheid om iedere gebruiker een eigen persoonlijke versleutelde map te geven met de naam 'Private'. De versleuteling wordt gedaan met behulp van eCryptfs.
De map 'Private' is een denkbeeldige map, de gegevens in deze map worden 'onder de motorkap' versleuteld opgeslagen in de verborgen map '.Private' (merk de punt op aan het begin van de mapnaam).
Nadeel van deze oplossing is dat gegevens die buiten de 'Private' map worden opgeslagen niet worden versleuteld.
Ubuntu biedt ook een oplossing door de schijf(partitie(s)) te versleutelen (LVM+LUKS encryptie). Om de computer te kunnen staren is dan een extra wachtwoord nodig.
Meer informatie hierover in het artikel InstallatieVersleuteldeHardeSchijf
De schijf(partitie) versleutelen heeft ook nadelen:
De computer wordt er iets trager door omdat alle (ook niet-persoonlijke) gegevens continue versleuteld en ontcijferd worden.
- Bij iedere (her)start van de computer moet het wachtwoord opnieuw worden ingegeven.
De gegevens van alle gebruikers worden versleuteld met dezelfde sleutel. Het is beter om iedere gebruiker een eigen sleutel te laten gebruiken.
Installatie
Installeer het softwarepakket ecryptfs-utils uit het Ubuntu Softwarecentrum of met een terminalopdracht:
sudo apt-get install ecryptfs-utils
Om de versleutelde 'Private' map te maken geeft iedere gebruiker zelf (dus zonder sudo) de volgende opdracht in een terminal:
ecryptfs-setup-private
Er wordt eerst gevraagd om het inlogwachtwoord en vervolgens om een wachtwoordzin. Als er geen wachtwoordzin wordt gegeven, wordt een wachtwoordzin gegenereerd.
Belangrijk
Bewaar de wachtwoordzin goed op een veilige locatie. De wachtwoordzin kan nodig zijn om bij problemen de gegevens alsnog te kunnen lezen.
Deze opdracht heeft de map ~/Private aangemaakt. Log uit en opnieuw in om de bestanden in deze map versleuteld op te slaan.
- De bestanden in de denkbeeldige (virtuele) 'Private' map (~/Private) zijn voor de gebruiker normaal te lezen en te bewerken maar in werkelijkheid worden deze bestanden versleuteld in de verborgen map ~/.Private opgeslagen.
Gebruik
Om versleuteld op te slaan kunnen deze in de map 'Private' map (~/Private) worden opgeslagen.
- De wachtwoordzin is gekoppeld aan de inlognaam. Het is NIET nodig de wachtwoordzin op te geven om de map 'Private' te gebruiken.
Gegevens van toepassingen in de versleutelde map
Om toepassingen gebruik te laten maken van de versleutelde map kan gebruik worden gemaakt van een zogenaamde 'verwijzing' (link).
In onderstaand voorbeeld wordt de (verborgen) map '.evolution' versleuteld opgeslagen. Deze map bevat persoonlijke e-mailberichten en is een goede kandidaat om versleuteld op te slaan.
- Wees er zeker van dat het programma dat de gegevens gebruikt NIET actief is. Open een terminalvenster en geef de volgende opdracht in:
- Verplaats de map naar een submap van de map 'Private':
mv ~/.evolution ~/Private
- Maak een verwijzing naar de originele naam van de map:
ln -s ~/Private/.evolution ~/.evolution
Dezelfde methode kan ook gebruikt worden voor mappen van andere toepassingen, zoals bijvoorbeeld de map '.ssh' (ssh sleutels) of '.mozilla' (Firefox/SeaMonkey-gegevens).
Automatische aanmelding
Als gebruik wordt gemaakt van de 'Automatische aanmelding' ('Systeem' → 'Beheer' → 'Beveiliging') zal de versleutelde opslag NIET direct beschikbaar zijn. Hiervoor is bewust gekozen om zo de versleutelde gegevens te beschermen met een wachtwoord. De map 'Private' bevat nu een bestand met de naam 'Access Your Private Data'.
Als op het bestand 'Access Your Private Data' wordt gedubbelklikt, wordt alsnog om het inlogwachtwoord gevraagd. Druk op de knop 'Herladen' en de versleutelde gegevens zijn beschikbaar.
- Pas op! Als gebruik gemaakt wordt van de 'Automatische aanmelding' zullen toepassingen die gegevens gebruiken in de map 'Private' niet goed werken totdat deze map toegankelijk is gemaakt door het wachtwoord in te geven.
Handmatig
In een uitzonderlijk geval kan het nodig zijn de versleutelde map 'handmatig' te koppelen. Dit kan bijvoorbeeld aan de orde zijn als het inlogwachtwoord is (of moet worden) gewijzigd door een beheerder of als het systeem is gestart vanaf een LiveCD, zoals in onderstaand voorbeeld:
ubuntu@ubuntu:~$ sudo mount /dev/sda1 /mnt ubuntu@ubuntu:~$ sudo mount -o bind /dev /mnt/dev ubuntu@ubuntu:~$ sudo mount -o bind /proc /mnt/proc ubuntu@ubuntu:~$ sudo mount -o bind /sys /mnt/sys ubuntu@ubuntu:~$ sudo chroot /mnt root@ubuntu:/# su - naam keyctl_search: Required key not available Perhaps try the interactive 'ecryptfs-mount-private' naam@ubuntu:~$ ecryptfs-mount-private Enter your login passphrase: Warning: Using default salt value (undefined in ~/.ecryptfsrc) Inserted auth tok with sig [f8da57c575199ea8] into the user session keyring
- bovenstaand voorbeeld gaat er van uit dat '/dev/sda1' de schijfpartitie is met de versleutelde map.
- Vervang 'naam' door de werkelijke gebruikersnaam.
- Geef bij 'login passphrase' het inlogwachtwoord van de gebruiker.
- deze 'handmatige' procedure met de Ubuntu LiveCD kan ook gebruikt worden voor het herstel van een Private map op een computer met een andere Ubuntu versie.
bovenstaand voorbeeld gaat er van uit dat het bestand met de encryptiesleutel '~/.ecryptfs/wrapped-passphrase' aanwezig is. Zoniet, en is de sleutel wel bekend, dan kan deze worden opgegeven met de opdracht:
ecryptfs-add-passphrase wachtwoordzin
deze opdracht moet gegeven worden na bovengenoemde 'su - naam' opdracht (let op het streepje!) en uiteraard voordat de versleutelde map gekoppeld wordt.
- bij gebruik van de wachtwoordzin wordt NIET meer om het inlogwachtwoord gevraagd.
Engelstalige Ubuntu wiki: https://help.ubuntu.com/community/EncryptedPrivateDirectory.
Terughalen wachtwoordzin
De wachtwoordzin is met het inlog wachtwoord versleuteld opgeslagen in het bestand 'wrapped-passphrase'. Het is van belang deze wachtwoordzin goed en veilig te bewaren. Voor het geval de wachtwoordzin toch niet veilig is bewaard kan deze alsnog worden uitgelezen door gebruik te maken van het inlogwachtwoord.
Voor een '.Private' map met de opdracht:
ecryptfs-unwrap-passphrase ~/.ecryptfs/wrapped-passphrase
De 'Passphrase' vraag moet met het inlogwachtwoord worden beantwoord.
Waarschuwing
Als bestand 'wrapped-passphrase' verloren gaat EN de wachtwoordzin is NIET bekend dan is het NIET MOGELIJK de gegevens te ontcijferen!
Wissen
Om de 'Versleutelde Private Map' functionaliteit te wissen kunnen de volgende stappen worden gebruikt:
- Stel alle belangrijke gegevens uit de map 'Private' veilig in een andere map.
- Koppel de versleutelde map af met de opdracht:
ecryptfs-umount-private
- Maak de map 'Private' beschrijfbaar.
chmod 700 ~/Private
- Wis de betrokken mappen. Hierna zijn de versleutelde gegevens definitief gewist!
rm -rf ~/Private ~/.Private ~/.ecryptfs
Eventueel kunnen de software pakketten ook gewist worden:
sudo apt-get remove ecryptfs-utils libecryptfs0
Opmerkingen
De Engelstalige wiki https://help.ubuntu.com/community/EncryptedPrivateDirectory
- Als de gebruiker is aangemeld is de inhoud van de map 'Private' zichtbaar voor gebruikers met beheerrechten (sudo). Dit kan een probleem zijn als bijvoorbeeld automatische back-up software een kopie van de map 'Private' maakt in een NIET-versleutelde map. Tegenmaatregel is om de map 'Private' uit te sluiten in de back-up configuratie. De verborgen map '.Private' mag wel in de back-up worden opgenomen omdat deze map ook versleuteld wordt opgeslagen in de back-up.
Als de computer gebruikt wordt om aan te sluiten via ssh en hierbij gebruik gemaakt wordt van een versleutelde persoonlijke map dan is er een bekend probleem. Meer informatie in het artikel over de Openssh-server.
Bij het opstellen van dit artikel is gebruik gemaakt van de Engelstalige Ubuntu Wiki en Ubuntu Documentation
De 'handmatige' procedure is afkomstig van de site van de ontwikkelaar.
- Het 'kopieer / verplaats' gedrag van Nautilus werkt alsof de Private map een apart volume is. Sleep je dus iets naar Private, dan wordt er een kopie gemaakt (terwijl de niet versleuteld kopie achterblijft). Je kunt het sleepgedrag zoals gebruikelijk aanpassen met de shift en alt toetsen