40

I'd love to use Ubuntu One or Dropbox features, like file storage and so on, but I don't want anyone else to access my data, USA Patriot act etc.. I want things to be encrypted so that the only place where info is decrypted is only my devices. Is that possible with Ubuntu One or Dropbox?

1
  • 1
    One of Ubuntu One's purpose is to provide access to one's data from anywhere, any time. With encryption, that will not be possible. But I think making this encryption optional would be the way to do it.
    – rigved
    Nov 4, 2011 at 10:12

9 Answers 9

32

Yes it is possible. The best way to archive this with a per file encryption is with encfs:

The general principle is that you have a (optionally hidden) encrypted folder inside UbuntuOne/Dropbox where your files are stored, but you access them though another folder, where the decrypted files are shown. Any File you add to the decrypted folder will be encrypted and put into the encrypted folder:

Decrypted folder ←encfs→ Encrypted Folder (inside UbuntuOne/Dropbox)

On another computer the encrypted folder is synced by UbuntuOne/Dropbox and can also be decrypted on the fly.

Installation:

  • Install encfs version 1.7 or greater

    sudo apt-get install encfs
    
  • install gnome-encfs-manager:

    sudo add-apt-repository ppa:gencfsm/ppa
    sudo apt-get update && sudo apt-get install gnome-encfs-manager
    

Setting up the Drive on the first computer:

  • Create a (hidden) directory inside Dropbox/Ubuntu One to use as for the encrypted files
  • Start gnome-encfs-manager and set up a new stash (click on the plus sign)
  • Set the directory to encrypt to a (hidden) folder inside your Dropbox/Ubuntu one folder
  • Set the mount directory wherever you want (default is fine)
  • enter a good password (30 random chars...) and click "Create"
  • edit the new stash so it is mounted on startup and the password is saved in the gnome keyring

You should now have your encrypted drive mounted (it will be displayed like a mounted usb-drive)

Importing the drive on other computers:

  • Wait for all files to sync
  • Start gnome-encfs-manager and set up a new stash
  • Set the directory to the previously created folder inside your Dropbox/Ubuntu
  • encfs-manager will detect the drive and import it
  • Set the mount directory wherever you want (default is fine) and click "Import"
  • edit the new stash as desdribed above
  • you will be asked for your password on first mount

Cross Platform compatibility:

  • This is cross compatible with Android when using Encdroid (open source, recommended) or Cryptonite (open source). Both Android Apps support Dropbox and should also work with UbuntuOne using local folder decryption (in combination with an UbuntuOne client which syncs your files onto the SD Card)
  • This is probably also compatible with windows using encfs4win or other software.
6
  • This works well and should be marked as the accepted answer. The only downside when using this with Ubuntu One (not sure about DropBox) is that notifications and file syncing/checked icons don't appear so it's difficult to know when files have finished syncing to Ubuntu One.
    – Joseph
    Apr 2, 2013 at 7:33
  • With dropbox the syncing-icon works when using this method ;-)
    – Uli
    Apr 5, 2013 at 13:24
  • Do you know why EncFS has slow write performance? It's much slower than ecryptfs or truecrypt. lists.fedorahosted.org/pipermail/cloudfs-devel/2011-June/…
    – gsedej
    Apr 11, 2013 at 12:52
  • @gsedej I have no Idea, but it is more than fast enough for my purposes
    – Uli
    Apr 13, 2013 at 13:51
  • 6
    There have been security vulnerabilities found in Encfs that make it especially insecure when used with Dropbox, see here . An alternative would be CryFS.
    – Heinzi
    Feb 12, 2016 at 17:50
8

The only good way to do this is to first encrypt the files locally, then move them to the Ubuntu One folder. If you make an encrypted partition or container and then choose to sync that with Ubuntu One, you risk syncing the unencrypted data. See here for one approach using encFS. It has it's limitations though.

An alternative is SpiderOak, which works like Ubuntu One but encrypts everything before it leaves your machine. They claim they have no way to recover your data if you forget your password, and it even has two-factor authentication. Last I tried it, it would slow down my machine for several minutes after booting while it scanned my drive, but this may have been fixed by now. Also, it's 2GB free vs Ubuntu One's free 5GB.

Here is another Ask Ubuntu post detailing some of the issues you raise.

0
5

I can propose you the Wuala service here: http://www.wuala.com/en as an alternative to Spideroak. Almost same functionalities.

But, if you really want to control the encryption yourself, I can propose you to use Ubuntu One and Déjà-Dup (backup tool) together. You use the server space of Ubuntu One for your data, but you upload the data through Déjà-Dup using a password. Déjà-Dup will encrypt the data with your password. I think this is the best solution: simple and secure.

4

You could possibly make use of EncFS (http://www.arg0.net/encfs). Use the Ubuntu One directory to store the encrypted file system, while mounting it somewhere else. For example, using the following setup.

  • ~/Ubuntu One/.encrypted - the hidden encrypted files
  • ~/Ubuntu One (encrypted)/ - the visible decrypted files

This however will make the number of files, directory and file structure, and their sizes visible, so it's not an ultimate solution.

Read here for more details of how to set it up, and here for some basic information about advantages and disadvantages.

3

I tried SpiderOak

Pros: "Zero knowledge" concept built in from the ground, exactly what I was looking for.

Super easy setup on Ubuntu and Android phone.

Concurrent file access AND encryption is there by design. 

Cons: Closed source client. I trust open source more, when it comes to security.

Cannot synchronize mobile phone directories to the cloud. Con only read
what is stored, by downloading every file on demand.

I chose to go with UbuntuOne + EncFs, since encryption layer is open source.

Still, would very appreciate if UbuntuOne would implement "Zero Knowledge" concept out of the box.


Now I'm using SSHFS against own server to access large files like photo / video collection.

pros: No need to duplicate every file on every computer.

No monthly fees for keeping terabytes of data on the network.
(because it's all on my once bought hardware)

cons: Useless on slow network connections or when offline.

And I use GIT + GITCOLA for document registry.

pros: Can work offline.

Have history on previous directory/files states.

cons: Doesn't work well on binary files above 1 GB.

Space is consumed by local git repository AND checked out copy of files,
so not good for huge video / photo collections.

And I use UbuntuOne + EncFS for a few gigabytes of fast changing and temporary files, like Desktop directory. This way I can conveniently switch computers and continue working on the same in-progress files, even sometimes offline and without quickly growing GIT repository.

3

CryFS

DISCLAIMER: I'm one of the developers of the below project.


There is a relatively new open source project called Cryfs which was designed for encrypting your Dropbox (or other cloud storage).

It was built mainly because all existing encrypted file systems have their disadvantages when used with cloud storage.

Furthermore, CryFS not only encrypts your file contents, but also file sizes, metadata and directory structure, which is not true for the other tools except VeraCrypt.

Not encrypting your file sizes and directory structure can give an attacker more information than you'd like to give them. A standard example is a file system with a lot of folders, ~20 files each and each file ~3MB, which is easily recognized to be a music CD collection, even if encrypted. Another example is storing a certain set of known files (say a Windows DVD). By looking at the directory structure and file sizes, someone having access to the encrypted files can easily figure out whether your file system contains it or not.

1

You might want to take a look at the Gnome Encfs Manager project.

It implements an easy GUI way to organize one or multiple EncFS volumes (which you then can sync via Ubuntu One, Dropbox and similar services; maybe WebDAV also works).

Look at Uli's answer for the details:

Yes it is possible. The best way to archieve this with a per file encryption is way is with encfs:

The general principle is that you have a (hidden) encrypted folder inside UbuntuOne/Dropbox where your files are stored, but you access them though another folder, where the decrypted files are shown. Any File you add to the decrypted folder will be encrypted and put into the encrypted folder:

Decrypted folder ←encfs→ Encrypted Folder (inside UbuntuOne/Dropbox)

On another computer the encrypted folder is synced by UbuntuOne/Dropbox and can also be decrypted on the fly.

I think, it's the way you have to think the least. Plus, it is open source.

1
  • Thanks for the heads up! Gnome Encfs Manager works great and is certainly easier to use. I updated my answer accordingly and also updated the cross platform section to include compatible android apps.
    – Uli
    Apr 13, 2013 at 13:53
1

From TrueCrupt home page: WARNING: Using TrueCrypt is not secure as it may contain unfixed security issues.


You can also use truecrypt.

Below is a short summary of how can you use truecrypt (sources for detailed instructions are provided below):

  • Download truecrypt from http://www.truecrypt.org/downloads and install it.
  • Open truecrypt and go to Volumes > Create New Volume.
  • Choose Create an encrypted file container.
  • Configure the container: place to store the file container, hashing and encryption algorithm, size of the container, passwords/keyfiles etc, and format the container.
  • From the main truecrypt window, select File button to locate the file you've created and press Mount.
  • Provide your password/keyfiles.
  • Now you can see file mounted in nautilus or any other file explorer.
  • After you're done dismount the volume.

Now, you can upload this volume container to your Ubuntu One account.

Sources and further information:


This answer was not intended to be a comparison but below I'm mentioning advantages/disadvantages of using truecrypt for reference.

The advantages of using truecrypt (over encfs) are as follows:

  • truecrypt is cross-platform. It is available for Windows, Linux, and Mac.

  • encfs uses FUSE to mount an encrypted directory onto another directory and thus file transfer is relatively slow.

  • encfs is file based. This means that everyone can actually see the number of files, permissions, approximate size, and the last time they were accessed or modified.

The disadvantages are:

  • The encrypted volume is a fixed size volume, so the file would always occupy the maximum space. Whereas encfs uses space when you copy files.

  • ONE BIG DISADVANTAGE: Whenever you modify the encrypted volume, you'd have to download/upload the complete file to sync your Ubuntu One account.

1
  • Another disadvantage: you get synchronization conflicts in the container file when you don't wait for a full sync in between working on your files with different computers. An alternative would be Cryfs
    – Heinzi
    Feb 12, 2016 at 17:54
0

Ubuntu File storage is now dead. I use https://syncthing.net/ now.

  • Open source.
  • Free and unlimited data storage.
  • Data is stored only on your devices.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .