-
Notifications
You must be signed in to change notification settings - Fork 208
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
encfs filename too long #445
Comments
(by shigi) |
(by germar) From 'man encfs':
|
(by shigi) IMHO the default settings shouldn't fail for obscure technical reasons. Maybe the default for new encfs backups could be changed to stream encoding of filenames? Additionally a short security notecould be added informing the user that a more secure filename encryption is possible but that it artifically restricts filename length. (Maximum filename length is even further reduced due to utf-8 encoding. Bytes vs. characters) I've also noticed that encfs has moved. So here's the updated link to the encfs issue: vgough/encfs#7 |
(by germar)
now you can copy the new .encfs6.xml to your destination drive and set up a new profile in BIT for this. Be careful not to override your existing .encfs6.xml as you will loose access to your current backup. I prefer to keep default with block-cipher. This is a bug in encfs which I suspect to be fixed soon and I don't want to make users backups less secure in the meantime. |
Is there a convenient way to identify the files which cause such issues? I'm having the
Also had a look at the folder names...nothing that exceeds the limits (~140 chars). The error log contains the encrypted folder/filenames up to 259 characters, but it can't decode the paths. Also I'm using backintime version 1.1.24. |
Whats the output of |
My mistake for two reasons. First, my few bash lines fromabove suck - I didn't consider whitespaces in filenames correctly (I usually don't use whitespaces and didn't realize that issue). And second: After some trying, I've realized that the decode command doesn't like the non-encrypted part of the filename which I've been passing as an argument:
The error message was a bit confusing...it confirmed me in my assumption that the encrypted filename is incomplete and got truncated at 259 characters (all 15 erroneous encrypted filenames have the same length, but they still can get decrypted)! Only after trying existing foldernames and getting the same error, I realized that I've been passing a bad argument. Thanks for your help! |
I have the same issue that BIT fails due to too long filename. @Germar the --quiet command structure is unclear to me. I have set it up to do SSH encryption, but that throws an error with rsync 5888. BIT gives back the filename is too long and thus the snapshot failed. |
This is a frequent problem with encfs, I've run into it many times. encfs' encrypted filenames are longer than the original ones by design. We can't change how encfs operates, but we should discuss how backintime can best deal with this problem. |
#1304 is probably a good step towards a solution. |
The EncFS documentation does specify the max file length here: https://github.com/vgough/encfs/blob/master/encfs/encfs.pod#caveats
and
|
EncFS should be treated deprecated because especially in the way BiT is using EncFS the underlying encryption is insecure. I started adding gocryptfs as successor. The elimination of Host/User/Profile nesting wouldn't help at all with this as the limit is just for the filename, not for the path |
EncFS is still pretty widespread and popular, because it's mature and well-tested. But you're right: it's known to be somewhat insecure under certain cicrumstances. For all I know, gocryptfs is the only somewhat-equal alternative in existence.
You're right, I got that mixed up. Both problems exist, though: EncFS tends to produce too-long filenames and too-long paths. |
It is insecure exactly in those conditions made by BiT. gocryptfs already work on normal encrypted profiles in the above linked branch. But a profile with ssh+encryption need to sync an encrypted view on the filesystem. For this it is necessary to en-/decrypt filenames and paths. This part is still missing in the branch. The founder added a socket in gocryptfs, which will provide en-/decryption of filenames through a json format. But I did not found the time to implement that... |
See Please note that the _Back In Time_project decided to remove EncFS in Please see Meta-Issue #1734 to monitor the transiation process and join Best regards, |
Closing this ticket based on the comment above. Feel free to reopen Best regards, |
Hi, first of all thanks for providing the ssh and ssh+encfs options in backintime!
Unfortunately I can't use the sshfs+encfs mode. I'm getting "File name too long errors". Here is an extract from the logs:
The backup is written to a QNAP fileserver. (linux-based; filesystem on the RAID is ext4.)
I'm using backintime 1.0.34 as provided by Ubuntu 14.04.
Here is one of the problematic path names broken up by directory/filename:
As you can see the encrypted filename itself is 259 characters long, which exceeds the max. filename length of ext4.
Just as I'm typing this, I've found it to be an encfs bug:
https://code.google.com/p/encfs/issues/detail?id=157
Until this is fixed, the only workaround seems to be to shorten my filenames.
Imported from Launchpad using lp2gh.
The text was updated successfully, but these errors were encountered: