Niet getest voor nieuwste versie: Dit artikel is niet getest voor de nieuwste versie. |
Versleutelde 'Private' Map
| Geschikt voor: | |
| Versie: | 9.10 |
Inleiding
Persoonlijke gegevens van Ubuntu-gebruikers zijn beveiligd tegen onbevoegd gebruik door toegangsrechten (rechtermuisknop op een map of bestand → Eigenschappen → Rechten) goed in te stellen en een wachtwoord te gebruiken.
Deze beveiliging heeft echter 2 zwakke punten:
- In de 'recovery mode' kan zonder wachtwoord worden ingelogd.
- De gegevens worden leesbaar opgeslagen op de harde schijf. Als de schijf in een andere computer wordt geplaatst kunnen de gegevens zonder het wachtwoord te weten gelezen worden. Denk hierbij bijvoorbeeld ook aan de harde schijf van een gestolen laptop.
Ubuntu biedt hiervoor al enige tijd een oplossing door de schijf(partitie(s)) te versleutelen (LVM+LUKS encryptie). Om de schijf(partitie(s)) te kunnen lezen is dan een extra wachtwoord nodig.
Deze oplossing heeft ook nadelen:
De computer wordt er iets trager door omdat alle (ook niet-persoonlijke) gegevens continue versleuteld en ontcijferd moeten 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.
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).
De '.Private' map heeft als nadeel dat alle persoonlijke gegevens die buiten deze map worden opgeslagen niet versleuteld worden. Daarom heeft Ubuntu (vanaf Karmic Koala, versie 9.10) een optie tijdens de installatie om de hele persoonlijke map te versleutelen. De map '.Private' bevat dan alle gegevens uit de thuismap van de gebruiker (/home/naam).
Tijdens installatie
Als in Ubuntu Karmic (versie 9.10) tijdens het installeren wordt gekozen om de persoonlijke map te versleutelen worden alle gegevens van de hoofdgebruiker automatisch versleuteld opgeslagen. Het is dan niet nodig een '.Private' map te maken.
Om de persoonlijke map na installatie alsnog te versleutelen zie (Engelstalig) http://blog.dustinkirkland.com/2009/06/migrating-to-encrypted-home-directory.html
Installatie
Als het softwarepakket (ecryptfs-utils) niet tijdens de installatie is geïnstalleerd kan dit alsnog met Synaptic, Adept of KPackageKit of d.m.v. de volgende opdracht in een Terminalvenster:
sudo apt-get install ecryptfs-utils
Om een versleutelde map 'Private' te maken geeft iedere gebruiker zelf de volgende opdracht in een Terminalvenster:
ecryptfs-setup-private
Er wordt eerst gevraagd om het inlogwachtwoord en vervolgens om een wachtwoordzin. Als er geen wachtwoordzin wordt gegeven, zal een wachtwoordzin gegenereerd worden.
Belangrijk
Bewaar de wachtwoordzin goed op een veilige locatie. De wachtwoordzin kan nodig zijn om bij problemen de gegevens alsnog te kunnen lezen.
Log uit en opnieuw in om de versleutelde map te gebruiken.
Gebruik
Als tijdens de installatie gekozen is voor versleuteling zal de versleuteling automatisch worden gebruikt.
Anders moeten om gegevens versleuteld op te slaan deze in de 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.
Toepassingen in de versleutelde map
Als de persoonlijke map tijdens installatie is versleuteld is dit hoofdstuk niet van toepassing.
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:
ps -ef | grep evolution
- 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 tijdens de installatie kan deze alsnog worden uitgelezen door gebruik te maken van het inlogwachtwoord.
Voor een geheel versleutelde persoonlijke map kan dit met de terminalvenster opdracht:
ecryptfs-unwrap-passphrase
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
Als de persoonlijke map tijdens installatie is versleuteld is dit hoofdstuk niet van toepassing.
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:
Als tijdens de installatie is gekozen om de persoonlijke map te versleutelen moeten deze softwarepakketten niet 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 een bestand dat onversleuteld achterblijft waarschijnlijk niet was wat je wilde). Je kunt het sleepgedrag zoals gebruikelijk aanpassen met de shift en alt toetsen












