Ubuntu One behind a proxy, how to make it work?

As of the version 3 of the Ubuntu One client (currently in 12.04, soon to be released for Windows and backported to older Ubuntu versions), connecting through a proxy should work in most situations. In Ubuntu you need to ensure ubuntuone-client-proxy is installed (it isn’t installed by default), and proxy settings should be picked up automatically.


Apparently, some parts of Ubuntu One (i.e. Tomboy notes) should already work behind a proxy, but unfortunately not the most important part, file sync.

I've come across a number of work-a-rounds for this via the ubuntu-one-users listserve. The most promising one seems to be this wiki entry. It requires the installation of the connect-proxy package and a manual edit of your ~/.config/ubuntuone/syncdaemon.conf file.

Alan Pope has another work-a-round in this blog post.


Well, I have to say until this is fixed, you are better off using Dropbox which work's perfectly behind a proxy.

This feature is really needed, and it is a big surprise having tried to just connect from behind a proxy that it hasn't been in the utility from day one.


I got it to work on Ubuntu 11.10 - Ubuntu One client version 2.0.0.

Did the following:

  1. Set the HTTP proxy in network proxy settings (Apply system wide)

    sudo vim /usr/share/pyshared/ubuntuone-client/ubuntuone/syncdaemon/action_queue.py
    
  2. Changed the line "from urlparse import urljoin" to "from urlparse import urljoin, urlparse"

  3. Added the line "from ubuntuone.storageprotocol.proxy_tunnel import ProxyTunnelFactory" right below the line "from ubuntuone.storageprotocol.context import get_ssl_context"

  4. Changed the following: http://pastebin.com/avKHcWeS

    sudo vim /usr/lib/python2.7/dist-packages/ubuntuone-storage-protocol/ubuntuone/storageprotocol/proxy_tunnel.py
    
  5. Changed the following: http://pastebin.com/XTSu9Hbg