home verzeichniss mit gocryptfs automatisch ver und entschlüsseln (ubuntu)

Das Verzeichniss soll wie mit eCryptfs automatisch beim login entschlüsselt werden. Vorteil gegenüber eCryptfs ist beispielsweise die Unterstützung weiterer Betriebssysteme.

gocrypt und lib pam installieren:

sudo apt install gocryptfs

sudo apt-get install libpam-mount

pam_mount sollte nun bereits in den folgende dateien aufgerufen werden, das kann optional nochmal überprüft werden:

etc/pam.d/common-password:33, /etc/pam.d/common-session:30 und /etc/pam.d/common-auth:2

in /etc/security/pam_mount.conf.xml muss nun direkt vor </pam_mount>folgendes eingefügt werden:

<volume user="testuser" fstype="fuse" options="nodev,nosuid,quiet,nonempty,allow_other"
path="/usr/bin/gocryptfs#/home/.enc/%(USER)" mountpoint="/home/%(USER)" />

zusätzlich sollte das debuggen angeschaltet werden.

<debug enable="1" />

uU muss in /etc/fuse.conf die option user_allow_other angeschaltet werden

nun das verzeichniss zum verschlüssel erstellen und initialisieren: (du musst testuser sein wenn du das machst, oder die rechte anpassen)
mkdir /home/testuser.cipher
gocryptfs -init /home/testuser/cipher 

nun alle dateien aus dem homeverzeichniss heraus verschieben
mkdir /home/testuser.tmp
cd /home/testuser
mv * .[^.]* ../testuser.tmp/

nun solltest du dich erstmal testweise per sudo su testuser in deinen account einloggen.
dann kannst du dich per 
cat /proc/mounts | grep gocrypt
versichern das das volume erfolgreich eingehängt wurde.
wenn das klappt und keine fehlermeldung erfolgt kannst du per
cd testuser.tmp
mv * .[^.]* ../testuser/
oder
cp * .[^.]* ../testuser/
die daten wieder zurückkopieren