Archive

Archive for the ‘ecryptfs’ Category

Encrypted Home in Ubuntu Jaunty with eCryptfs (English Version)

April 29, 2009 Leave a comment

(Die deutsch Version ist hier)

Encryption is very important especially on a mobile device. It is normally done in the Linux world with block device encryption, e.g. LUKS. Since Intrepid exists the option to encrypt a private directory within the home directory eCryptfs.

Now, in Jaunty eCryptfs is available with complete encryption of the personnel directory in /home. This encryption works per user, it is possible to have one user encrypted and an other user not encrypted. Only have the personnel directory encrypted, should bring more performance than the whole drive, but it is less safe. A comparison with other encryption methods could be found in the eCryptfs FAQ (link below). In any case you should also encrypt your swap partition, if you have one.

You should also refer to my former posts about encryption principles in Ubuntu “Verschlüsselung in Ubuntu – Überblick“. Sorry, only in German at the moment.

How does the installation work?

First the user is deleted incl. all of his data in /home. Then the user is recreated with encrypted directory in /home. It is not necessary to have /home on a separate partition. Because all data of the personnel directory in /home is deleted you should do this directly after installing Jaunty. Otherwise you have to safe all your date incl. hidden directories to a different place.

There is no second password required, the users login password encrypts the passphrase which encrypts the data. Therefore your login password should be strong as well, means contain numbers and special characters.

Attention!
After encrypting is not easily possible to access the personnel data from e.g. a live-CD. How this works you can read in my post Mounten eines mit Ecryptfs verschlüsselten Home
Verzeichnisses
(in German) or directly in Dustin Kirklands blog for the English version.

Please backup your data now on a external media.

Installation ecryptfs-utils
First you have to install the package ecryptfs-utils. You could do this by using Synaptic or type in a terminal:

sudo apt-get install ecryptfs-utils

Encryption of the home directory for the only user

After installing Jaunty restart the computer and choose in the Grub menu (boot menu) the recovery entry. If you do not see the Grub menu you can press ESC to show it.
Depending if you have friendly-recovery installed you see either a second menu. There you can choose the root entry (scroll down). Or you are directly at the prompt.

to delete the user type:

deluser –remove-home steffen

Please change “steffen” to your user. With that command every personnel data of this user is deleted!

to recreate the user type:

adduser –encrypt-home steffen

Then you have to set the users password. Following you can answer the questions by accepting the presets with Enter. Please note the shown passphrase, you can also do it later.

Our recreated user needs to be the admin again:

adduser steffen admin

In Jaunty users are also member of group sambashare:

adduser steffen sambashare

And users should be able to add a printer (group LPADMIN):

adduser steffen lpadmin

With that commands everything should be as before, except of the encrypted personnel directory.

Press in the terminal Ctrl+D to boot normally.

Attention! If something goes wrong, you can recreate a non-encrypted user with:

adduser steffen
adduser steffen admin

adduser steffen sambashare
adduser steffen lpadmin

Additional user
If you only want to create a additional encrypted user please type this instead in a normal terminal. You do not have to reboot and use the recovery session. Also there is no need to delete any user.

sudo adduser –encrypt-home steffen

Replace “steffen” by your user. Normally this user needs no root rights.

Encrypt Swap partition
If you have one, you should encrypt it. But this breaks you ability to hibernate. Stand by works. On a big machine normally is no need for a swap. On my NC10 netbook I do not use one as well. This encryption is done by block device encryption with the package cryptsetup.

In a normal terminal type:

sudo apt-get install cryptsetup
sudo ecryptfs-setup-swap

Please note the passphrase
You can show it every time in a terminal by typing :

ecryptfs-unwrap-passphrase ~/.ecryptfs/wrapped-passphrase

Then you will be asked for your normal login password.

Links:
Ecryptfs FAQ
Ecryptfs Homepage at Launchpad

Attention: Everything is tested but I can give no warranty.

Mounten eines mit eCryptfs verschlüsselten Home Verzeichnisses

April 26, 2009 4 comments

In meinem Artikel Home verschlüsseln in Ubnutu Jaunty 9.04
habe ich gezeigt, wie man mit eCryptfs sein Home-Verzeichnis, genauer sein persönliches Verzeichnis in /home verschlüsselt.

Wie kommt man nun aber nach einem Systemcrash an seine Daten? Dustin Kirkland hat in seinem Blog gezeigt, wie man von einer Jaunty Live-CD auf sein Home-Verzeichnis zugreift. Ich habe seine Anleitung in das Deutsche übersetzt.

Nach dem Starten der Live-CD muss man ein Terminal öffnen und folgendes eingeben:

ubuntu@ubuntu$ sudo mount /dev/sda1 /mnt

(Sda1 ist die Partition, wo normalerweise das Ubuntu liegt. Falls man auf der ersten Partition Windows hat, müsste man sda2 benutzen)

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 – steffen
steffen@ubuntu$ ecryptfs-mount-private

Danach muss man sein normales Login Passwort, also nicht die lange Passphrase eingeben.

steffen@ubuntu$ cd $HOME
steffen@ubuntu$ ls -alF

Nun werden die Dateien angezeigt. Jetzt kann man den Dateimanager noch mit Rootrechten starten und die Dateien kopieren.

steffen@ubuntu$ gksu nautilus

Home verschlüsseln in Ubuntu Jaunty 9.04 mit Ecryptfs

April 24, 2009 10 comments

(The English version is here)

Verschlüsselung der persönlichen Daten ist gerade bei kleinen Netbooks sehr wichtig. Sie können viel leichter “mitgenommen” werden als große Desktops oder manche Notebooks.

Seit Intrepid gibt es die Möglichkeit ein privates verschlüsseltes Verzeichnis mit eCryptfs anzulegen. Die logische Weiterentwicklung dieses Konzepts ist, das gesamte persönliche Verzeichnis in /home zu verschlüsseln. Dadurch sind automatisch alle Dateien beispielsweise in den Verzeichnissen Dokumente oder Bilder verschlüsselt.

Diese Variante ist auch performanter als das gesamte System zu verschlüsseln, jeder Nutzer auf dem System kann getrennt verschlüsselt werden.

Sie bietet aber auch nicht den gleichen Schutz wie eine Verschlüsselung des gesamten Systems, da ein Angreifer mit Zugriff auf den Rechner Veränderungen an Root, etc, … vornehmen kann und dadurch die Verschlüsselung aushebeln kann. Wer sich gegen Spionage (kein Witz!) schützen muss, sollte sein gesamtes System verschlüsseln.

Einen Vergleich mit anderen Verschlüsselungsmöglichkeiten ist in den eCryptfs FAQ enthalten. Der Link dazu befindet sich Unten.

In meinem früheren Artikel “Verschlüsselung in Ubuntu – Überblick” gab ich eine Einführung über die möglichen Varianten der Verschlüsselung. Wer sich nicht sicher ist, welche Variante die richtige ist, sollte dort noch einmal nachlesen. Hier zeige ich, wie man das gesamte persönliche Verzeichnis eines Nutzers, sowie die Swap-Partition verschlüsselt.

Die Konfiguration des verschlüsselten persönliches Verzeichnisses sollte direkt nach der Installation geschehen. Dabei wird das gesamte persönliche Verzeichnis gelöscht. Wer bereits Daten in seinem Verzeichnis hat, muss sie vorher auf einen anderen Ort und nach erfolgter Verschlüsselung wieder zurück kopieren.

Achtung!
Nach der Verschlüsselung kann nicht mehr einfach von einer Live-CD auf das verschlüsselte Verzeichnis zugegriffen werden! Wie man das macht, zeige ich in Mounten eines mit Ecryptfs verschlüsselten Home Verzeichnisses.

Wie immer bei diffizilen Tätigkeiten sollte vorher und dann regelmäßig ein Backup auf einem externen Datenträger erstellt werden.

Das Passwort
Zum Verschlüsseln der Daten wird nicht das User-Passwort benutzt, sondern eine Passphrase. Diese wird mit dem User-Passwort verschlüsselt. Der Vorteil ist, dass zum Anmelden nur das User-Passwort erforderlich ist. Auf Grund dieser Funktionsweise muss unbedingt auch das gewählte User-Passwort ausreichend stark sein. Das Passwort sollte nicht aus Wörtern oder Namen bestehen und es sollte Zahlen und Sonderzeichen enthalten.

Installation ecryptfs-utils
Bei dem beschriebenen Verfahren wird das Paket ecryptfs-utils benutzt. Dieses muss als erstes installiert werden, falls es noch nicht ist. Dazu einfach die Synaptic Paketverwaltung benutzen oder im Terminal eingeben:

sudo apt-get install ecryptfs-utils

Verschlüsselung des Home-Verzeichnis für einen User

Nach der Installation startet man den Rechner neu und wählt im Grub-Menü (Boot-Menü) den Recovery Eintrag. Evtl. muss während des Bootens die ESC-Taste gedrückt werden, um in das Grub-Bootmenü zu kommen. Anschließend kommt man entweder direkt auf den Root-Prompt oder in das friendly-recovery Menü. Dort mit den Cursor-Tasten den Root-Eintrag auswählen.

Anschließend folgendes zum Löschen des Users eingeben:

deluser –remove-home steffen

Dabei ist steffen durch den gewünschten Benutzernamen zu ersetzen. Bei diesem Kommando wird der angegebene Nutzer inkl. aller seiner Dateien im Home-Verzeichnis gelöscht!

Dann einen neuen User anlegen:

adduser –encrypt-home steffen

Jetzt muss das noch das Passwort eingegeben werden. Es folgen noch Abfragen nach weiteren Daten, z.B. Raum, Telefon. Diese kann man einfach durch Drücken von Return auf der Vorgabe belassen. Die Passphrase, die ausgegeben wird, sollte man sich notieren.

Da wir den einzigen Nutzer gelöscht und neu angelegt haben, muss dieser auch noch Admin werden, falls das gewünscht ist. Das erfolgt mit:

adduser steffen admin

Den Nutzer noch zur Gruppe sambashare zufügen:

adduser steffen sambashare

Dem Nutzer noch ermöglichen Drucker (LPADMIN) hinzuzufügen:

adduser steffen lpadmin

Damit sollten die originalen Gruppen von Ubuntu Jaunty wieder hergestellt sein. Nun im Terminal Strg+D drücken und normal booten.

Achtung! Falls das Anlegen eines verschlüsselten Verzeichnisses nicht erfolgreich war, kann mit den folgenden Befehlen ein normaler User angelegt werden:

adduser steffen
adduser steffen admin

adduser steffen sambashare
adduser steffen lpadmin

Zusätzlicher User
Wenn man nur einen zusätzlichen Nutzer mit einem verschlüsselten Verzeichnis anlegen will, gibt man folgendes in einem normalen Terminal ein.

sudo adduser –encrypt-home $USER

Der Umweg über die Recovery ist hier nicht erforderlich. Dieser Nutzer benötigt keine normalerweise Root-Rechte.

Swap-Partition verschlüsseln
Wenn eine Swap-Partition vorhanden ist, sollte sie jetzt noch verschlüsselt werden. Es ist aber zu überlegen, ob man überhaupt eine benötigt, da bei einer verschlüsselten Swap-Partition der Rechner nicht mehr in den Ruhezustand versetzt werden. Standby funktioniert weiterhin.

Zur Verschlüsselung der Swap-Partition muss vorher noch das Paket cryptsetup installiert werden.

Beides zusammen geschieht im normalen Terminal mit:

sudo apt-get install cryptsetup
sudo ecryptfs-setup-swap

Notieren der Passphrase
Man sollte sich unbedingt die Passphrase notieren, damit man später auf die verschlüsselten Daten auch beim Systemcrash zugreifen kann.
Das geschieht jederzeit im Terminal mit:

ecryptfs-unwrap-passphrase ~/.ecryptfs/wrapped-passphrase

Anschließend muss das User-Passwort eingegeben werden.

Links:
Ecryptfs FAQ
Ecryptfs Homepage bei Launchpad

Hinweis: Alle Anleitungen sind getestet worden, es kann aber keinerlei Haftung übernommen werden.

Follow

Get every new post delivered to your Inbox.