Spideroak

by Josh Pruett

Posted Friday, February 20, 2015 8:43 PM


Bottom line: I'm running a SpiderOak client on my Synology DS214Play.
Gotchas: It might only run on an Intel Chipset; ipkg needs to be installed.

Why:
  • The Amazon Glacier app doesn't provide client-side encryption
  • Arq (client-side encryption Mac app) needs a Mac to run the client 
  • The most common CrashPlan client for Synology requires a third party package repository, and the private key is stored and transferred on the CrashPlan servers. It could be encrypted with the account password on the server, but it I'd still feel better if CrashPlan took a more hands-off approach
  • S3 is too expensive
  • Honestly, SpiderOak is a bit expensive, but there's been Unlimited-Offers I hope to take advantage of
I did NOT write down what I did as I went... so the following is an afterthought (if you're going to do something like this, it's at your own risk; I take no responsibility for damages; installing ipkg voids the Synology warranty):

  • I backed up my Synology & data to an external drive
  • SSH was already enabled on the Synology
  • Installed ipkg on the Synology
  • Used this guide for SpiderOak on QNap as a reference
  • cd ~
    wget https://spideroak.com/getbuild?platform=ubuntu&arch=i386
    dpkg-deb -x spideroak_5.1.8_i386.deb spideroak
    
  • ipkg update
    ipkg install python26
    cp -r ~/spideroak /opt/spideroak
    mkdir /opt/spideroak/conf
    vi /opt/spideroak/usr/bin/SpiderOak
    
  • #!/bin/sh
    
    if [ ! -d "/root/.SpiderOak" ]; then
        ln -s /opt/spideroak/conf /root/.SpiderOak
    fi
    
    LD_LIBRARY_PATH="/opt/spideroak/opt/SpiderOak/lib:/opt/lib:/usr/lib:$LD_LIBRARY_PATH"
    export LD_LIBRARY_PATH
    QT_PLUGIN_PATH="/opt/spideroak/opt/SpiderOak/lib/plugins" ; export QT_PLUGIN_PATH
    SpiderOak_EXEC_SCRIPT=$(cd `dirname $0` ; pwd)/SpiderOak
    export SpiderOak_EXEC_SCRIPT
    exec "/opt/spideroak/opt/SpiderOak/lib/SpiderOak" "$@"
    
  • In a browser, visit: https://spideroak.com/nus/console
  • The page should generate a JS file to download (you'll need to put your password into the file)
  • Apparently --bootstrap is deprecated... (shh I used it anyway)
    /opt/spideroak/usr/bin/SpiderOak --bootstrap=PATH_TO_THE_DOWNLOADED_JS_FILE
    /opt/spideroak/usr/bin/SpiderOak --help
    
  • Adding directories and running the SpiderOak client from command line is pretty simple:
    /opt/spideroak/usr/bin/SpiderOak --include-dir=PATH_TO_INCLUDE_DIRECTORY
    /opt/spideroak/usr/bin/SpiderOak --batchmode (use the -v option for log output in the terminal)
    
  • I wanted to setup the GUI because tunneling X11 over SSH sounded like fun.
    ipkg install xdpyinfo xauth xterm xrender fontconfig freetype glib ttf-bitstream-vera
    
  • Then I made a backup of my ssh config file, and updated it. To restart the SSH service, I disabled, then re-enabled SSH in the main Synology Settings GUI.
    nano /etc/ssh/sshd_config
    X11Forwarding yes
    X11DisplayOffset10
    XAuthLocation /opt/bin/xauth
    
  • I exited my SSH session, rebooted the Synology just because why not, then held my breath and ran
    ssh -X root@x.x.x.x
    /opt/spideroak/usr/bin/SpiderOak
    
I removed a lot of the issues I ran into, I also skipped simple steps Google has links to (like installing ipkg, or connecting over SSH). Again, modifying your NAS will "invalidate your software support warranty, although not normally your hardware warranty." This information is not a guide, I didn't even test it after I posted it and there's a very real risk of messing things up modifying an OS as root. Always make backups!

Labels: , , , ,

0 Comments Post a Comment