encfs auf DS109

Status
Für weitere Antworten geschlossen.

zwopi

Benutzer
Mitglied seit
23. Aug 2010
Beiträge
7
Punkte für Reaktionen
0
Punkte
0
Hallo,

hat jemand Erfahrungen mit encfs (http://www.arg0.net/encfs) auf einer Diskstation gemacht?

Hintergrund:
Ich möchte meine Daten auf der DS per encfs verschlüsselt ablegen und dann per rsync zum HiDrive syncronisieren - hätte den Charme, dass der Schlüssel nicht ausser Haus geht und ich trotzdem einen file basierten Sync vornehmen kann - ich bin mir der krypto Randbedingungen von encfs bewusst ;-)

Bin daher am überlegen, wie ein cross compile unter Ubuntu ablaufen könnte, es gibt halt einige Abhängigkeiten von encfs: boost, rlog, fuse, openssh.

Überblicke aber derzeit noch nicht ganz, wie das Ablaufen kann.

Hat sich schon jemand mit dem Thema encfs beschäftigt? Habe leider nur im forum.synology.com einen Hinweis gefunden, dass jemand auf einer grossen DS wohl encfs zum Laufen gebracht hat - leider aber nicht wie...

Würde mich über eure Hilfe freuen.

Viele Grüsse
Holger
 

knox

Benutzer
Mitglied seit
31. Mrz 2007
Beiträge
478
Punkte für Reaktionen
0
Punkte
0
Hallo,

hat jemand Erfahrungen mit encfs (http://www.arg0.net/encfs) auf einer Diskstation gemacht?

Hintergrund:
Ich möchte meine Daten auf der DS per encfs verschlüsselt ablegen und dann per rsync zum HiDrive syncronisieren - hätte den Charme, dass der Schlüssel nicht ausser Haus geht und ich trotzdem einen file basierten Sync vornehmen kann - ich bin mir der krypto Randbedingungen von encfs bewusst ;-)

Bin daher am überlegen, wie ein cross compile unter Ubuntu ablaufen könnte, es gibt halt einige Abhängigkeiten von encfs: boost, rlog, fuse, openssh.

Überblicke aber derzeit noch nicht ganz, wie das Ablaufen kann.

Hat sich schon jemand mit dem Thema encfs beschäftigt? Habe leider nur im forum.synology.com einen Hinweis gefunden, dass jemand auf einer grossen DS wohl encfs zum Laufen gebracht hat - leider aber nicht wie...

Würde mich über eure Hilfe freuen.

Viele Grüsse
Holger

Ich glaube, die Mühe musst du dir gar nicht mehr machen. Mit der DSM3 ist nun eine Verschlüsselung mit eingebaut - muss mich aber damit mal näher beschäftigen, dann kann ich gerne Berichten
 

zwopi

Benutzer
Mitglied seit
23. Aug 2010
Beiträge
7
Punkte für Reaktionen
0
Punkte
0
Hi knox,

Danke für die Info.

Ja, die DSM3 hat verschlüsselte shared folder - habe ich gerade ausprobiert:
es wird ein decrypted folder erzeugt und ein encrypted z.B.
/volume1/test -> decrypted, wird nach aussen dargestellt.
/volume1/@test@ -> encrypted, Daten & Name von File&Folder

Muss ich ein wenig ausprobieren und mal schauen, welches encrypted FS sich dahinter verbirgt - ich möchte auf die verschlüsselten Daten nicht nur propietär über die DS zugreifen können, mount z.B. über Ubuntu oder Mac sollte ebenfalls möglich sein ;-)

Gruß
Holger
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0

zwopi

Benutzer
Mitglied seit
23. Aug 2010
Beiträge
7
Punkte für Reaktionen
0
Punkte
0
hey jalives,

danke für den Hinweis. Ich habe mir ecryptfs angesehen - das wird für meine Zwecke voll ausreichen.

Mittlerweile war ich schon bei der Compilierung von encfs auf der DS gelandet. die Abhängigkeiten sind installiert, aber bei ./configure von encfs kommt es zum Abbruch - da scheint etwas am configure script oder den Linker Optionen beim link der boost libs nicht zu stimmen.

Werde mein Vorhaben zum Strato Hidrive backup also per ecryptfs aufsetzen ;-)

btw: bin über http://neuntoeter.wordpress.com/2010/07/31/verschluesselte-online-backups/ auf encfs gekommen...
Versuche heute Abend noch einmal encfs zum laufen zu bringen - eine Alternative kann ja nicht schaden.

Gruß
Holger
 

zwopi

Benutzer
Mitglied seit
23. Aug 2010
Beiträge
7
Punkte für Reaktionen
0
Punkte
0
Hallo,

bei einem Versuch, ein durch die Diskstation verschlüsseltes Verzeichnis per rsync auf Hidrive zu übertragen, kommt es immer zum Abbruch von rsync - anscheinend sind die Filenamen, die das ecryptfs der Diskstation bei der Verschlüsselung erzeugt, zu lang für den Strato rsync server :mad:

Also doch wieder zurück zu Plan A - Verschlüsselung durch encfs - ich möchte verschlüsselte Dateinamen haben, mit encfs ist eine advanced configuration möglich...

Nun habe ich auch alle Pakete/Abhängigkeiten auf der DS kompilieren können:

  1. IPKG installiert
  2. Pakete optware-devel, openssl-dev, gcc, boost-filesystem, boost-system, boost-serialization, boost-dev installiert
  3. eine Inkonsistenz der libpthread korrigiert - wichtig, sonst kommt es zu diversen Abbrüchen bei den folgenden ./configure & make Aufrufen, siehe roten Text im folgenden Terminal-Log.
  4. fuse source geladen und kompiliert (fuse-2.8.4)
  5. rlog source geladen und kompiliert (rlog-1.4)
  6. encfs source geladen und kompiliert (encfs-1.6)
  7. kleiner Test von encfs - funktioniert :D

Anbei ein gekürztes Log des Terminals:
Rich (BBCode):
DiskStation01 login: root
Password: 

BusyBox v1.16.1 (2010-08-16 05:34:32 CST) built-in shell (ash)
Enter 'help' for a list of built-in commands.

DiskStation01> cd /volume1/public/
DiskStation01> wget http://ipkg.nslu2-linux.org/feeds/optware/cs08q1armel/cross/stable/syno-mvkw-bootstrap_1.2-7_arm.xsh
...
18:45:20 (172.58 KB/s) - `syno-mvkw-bootstrap_1.2-7_arm.xsh' saved [252859/252859]
DiskStation01> sh syno-mvkw-bootstrap_1.2-7_arm.xsh 
Optware Bootstrap for syno-mvkw.
...
Setup complete.
DiskStation01> reboot
DiskStation01> Connection closed by foreign host.

DiskStation01 login: root
Password: 
BusyBox v1.16.1 (2010-08-16 05:34:32 CST) built-in shell (ash)
Enter 'help' for a list of built-in commands.

DiskStation01> ipkg update
Downloading http://ipkg.nslu2-linux.org/feeds/optware/cs08q1armel/cross/unstable/Packages.gz
...
Successfully terminated.
DiskStation01> ipkg install optware-devel openssl-dev gcc boost-filesystem boost-system boost-serialization boost-dev 
Installing optware-devel (6.8-10) to root...
...
Successfully terminated.
DiskStation01> 
DiskStation01>cd /volume1/public/fuse-2.8.4/
DiskStation01> cp /lib/libpthread.so.0 /opt/arm-none-linux-gnueabi/lib/libpthread-2.5.so  
DiskStation01> ./configure
checking build system type... armv5tel-unknown-linux-gnueabi
...
config.status: executing libtool commands
DiskStation01> make 
Making all in include
...
make[1]: Leaving directory `/volume1/public/fuse-2.8.4'
DiskStation01> make install
Making install in include
...
make[1]: Leaving directory `/volume1/public/fuse-2.8.4'
DiskStation01> cd ..
DiskStation01> tar xzpf rlog-1.4.tar.gz 
DiskStation01> cd rlog-1.4/
DiskStation01> ./configure
checking build system type... armv5tel-unknown-linux-gnu
..
config.status: executing depfiles commands
DiskStation01> make
make  all-recursive
...
make[1]: Leaving directory `/volume1/public/rlog-1.4'
DiskStation01> make install
Making install in rlog
...
make[1]: Leaving directory `/volume1/public/rlog-1.4'
DiskStation01> cd ..
DiskStation01> cd encfs-1.6/
DiskStation01> ./configure
checking for a BSD-compatible install... /opt/bin/install -c
..
config.status: executing libtool commands
DiskStation01> make
make  all-recursive
...
make[1]: Leaving directory `/volume1/public/encfs-1.6'
DiskStation01> make install
Making install in encfs
...
DiskStation01> cd /volume1
DiskStation01> mkdir tmp
DiskStation01> cd tmp
DiskStation01> mkdir crypt-raw
DiskStation01> mkdir crypt
DiskStation01> encfs /volume1/tmp/crypt-raw /volume1/tmp/crypt
Creating new encrypted volume.
Please choose from one of the following options:
 enter "x" for expert configuration mode,
 enter "p" for pre-configured paranoia mode,
 anything else, or an empty line will select standard mode.
...
DiskStation01> ls -l
total 8
drwxr-xr-x 2 root root 4096 Sep  5 23:05 crypt
drwxr-xr-x 2 root root 4096 Sep  5 23:05 crypt-raw
DiskStation01> cd crypt
DiskStation01> touch test.txt
DiskStation01> ls -l
total 0
-rw-r--r-- 1 root root 0 Sep  5 23:06 test.txt
DiskStation01> ls -l ../crypt-raw/
total 0
-rw-r--r-- 1 root root 0 Sep  5 23:06 gQLAtsUgJ-i6K1
DiskStation01> mkdir testdir
DiskStation01> ls -l ../crypt-raw/
total 4
drwxr-xr-x 2 root root 4096 Sep  5 23:06 Pi02mZXniWdy
-rw-r--r-- 1 root root    0 Sep  5 23:06 gQLAtsUgJ-i6K1
DiskStation01> ls -l
total 4
-rw-r--r-- 1 root root    0 Sep  5 23:06 test.txt
drwxr-xr-x 2 root root 4096 Sep  5 23:06 testdir
DiskStation01>

Damit sollte sich das Problem mit den zu langen FNEK Filenamen beim ecryptfs umgehen lassen.

Ich werde das nun mal testen...

Gruß
Holger
 

itari

Benutzer
Mitglied seit
15. Mai 2008
Beiträge
21.900
Punkte für Reaktionen
14
Punkte
0
Das liest sich gut :).

Wenn es soweit stabil ist, dann wäre es schön, wenn du deine Erfahrungen und Anleitung auch in unserem Wiki veröffentlichen würdest.

Auch einen E-Mail an die Synology-Entwickler mit dem Problem der langen Dateinamen wäre sinnvoll, damit die sich dazu auch etwas überlegen können, denn dieses Problem besteht ja weiterhin.

Itari
 

zwopi

Benutzer
Mitglied seit
23. Aug 2010
Beiträge
7
Punkte für Reaktionen
0
Punkte
0
Hi,

Ich werde das mal diese Woche im Detail testen und wenn alles gut läuft auch in das Wiki einstellen.

Bzgl. Der langen Dateinamen: das ist kein Problem der DS - es liegt wohl in den switches der Kompilierung des rsync Servers beim Strato Hidrive begründet. Es laufen da bereits Anfragen bei Strato, dies zu korrigieren.

Gruß
Holger
 

zwopi

Benutzer
Mitglied seit
23. Aug 2010
Beiträge
7
Punkte für Reaktionen
0
Punkte
0
Hallo,

kurzes update:

Bei Zugriff auf das entschlüsselte Verzeichnis über Linux und smb funktioniert es

Bei Zugriff auf das entschlüsselte Verzeichnis über OSX und smb oder nfs funktioniert es nicht: das entschlüsselte Verzeichnis enthält dann keine Daten mehr und bei ll im DS Terminal werde die Attribute nicht mehr sauber dargestellt. Auch dort keine Inhalte mehr im Verzeichnis.

Es scheint sich um ein Problem zwischen der DS und OSX zu handeln - ich habe die 3.0 beta laufen, vielleicht liegt es auch daran...

cu
Holger
 

zwopi

Benutzer
Mitglied seit
23. Aug 2010
Beiträge
7
Punkte für Reaktionen
0
Punkte
0
und ein weiteres update:

mittlerweile bin ich drauf gekommen, warum die entschlüsselten Ordner in Freigaben nicht sichtbar waren. Es fehlte ein Parameter für Fuse:

Statt
encfs /volume1/tmp/crypt-raw /volume1/tmp/crypt

muss es so lauten:
encfs /volume1/tmp/crypt-raw /volume1/tmp/crypt -- -o allow_other

Damit funktioniert es ;-)

Meine Konfiguration ist mittlerweile:

encfs 1.7.3
DSM3.0

btw: das Limit beim Abgleich mittels rsync auf das Strato Hidrives bzgl. der Pfad/Filenamenlänge beträgt wohl 1024 Zeichen. Bei größeren Längen kommt es zum Abbruch:
rsync: connection unexpectedly closed (73 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(601) [sender=3.0.7]


Gruß
Holger
 

itari

Benutzer
Mitglied seit
15. Mai 2008
Beiträge
21.900
Punkte für Reaktionen
14
Punkte
0
Ich denke, dass das Theme jetzt hier so reif ist, dass man es in unser Wiki übertragen kann. Würdest du das für uns machen, zwopi?

Itari
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat