Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

[SOLVED] How do I keep SSH tunnel open for Crashplan?

Featured Replies

Hello guys,

 

  So after getting some help from the wonderful folks on this forum, I managed to get Crashplan running on unraid. My purpose is to see if I could get Crashplan to backup my most important shares to the Crashplan Central Cloud (I have a subscription). So here is what I have so far:

 

1. I have Crashplan.plg and Crashplan_gui.plg installed on unraid and both are active. On my crashplan GUI I have the following:

D1n8vkC.png

 

2. I then configured the properties.ui file as instructed by others to include the servicePort=4243 and then issued the following terminal command on my Mac

 

ssh -L 4200:localhost:4243 [email protected]

 

where, 192.168.1.10 is the local IP address of my unraid server. I successfully opened up the SSH tunnel.

 

Now, when I start Crashplan I see the unraid server as a local computer and I can add shares to be backed up. The only caveat, though is that the minute I close the terminal, Crashplan crashes saying that it cannot find the Crashplan engine. Does this mean that I permanently need to have a terminal session open in my Mac to keep the SSH tunnel open?

 

Is there a mechanism where I can keep the SSH tunnel open without keeping terminal turned on all the time?

 

Any pointers would be most appreciated. Thank you so much!

 

No - you only need the tunnel when you need to configure or make changes to the configuration of the crashplan engine.

 

Otherwise there is no need to keep the tunnel open, or a client connected to it. The engine will happily run in the background backing up based on the settings you've given it.

  • Author

That's interesting because as soon as I close the terminal window my crashplan app crashes and says that it cannot reach the crashplan engine. When I restart terminal and open up the SSH tunnel it connects again without an issue. Should I remove the password on my unraid root login?

 

 

Sent from my iPhone using Tapatalk

The engine is totally separate to the client.

 

The client isn't crashing from your description. It's just being disconnected from the engine (which is correct if you're closing the tunnel). This doesn't stop the engine running, it just means your client can't connect to it to see it's status.

 

When you open the tunnel the client can connect to the engine again to allow you to manage it. The engine is always running and 'doing stuff' in the interim.

 

Engine (presuming setup correctly) will always be running. Set up the tunnel and run the client anytime you want to see what it's up to or make config changes. Otherwise no need at all to have the client running.

 

You'll notice crashplan ships two separate bits of code :

 

CrashplanEngine

CrashplanDesktop

 

engine is the server and always running. Desktop is the client that connects to 'a' engine and lets you manage it. These are, 90% of the time, on the same machine and so you never have to think about the difference. Obviously with unraid you need to juggle them a bit to make it all work and the difference and seperation between the two things becomes apparent..

 

 

p.s not need to do anything with the root password. Definitely don't remove it!

  • Author

Boof,

 

Thank you for that wonderful description. I finally got it!

 

My problem is that I failed to understand the separation between the Crashplan client and Crashplan engine, and the fact that the engine can run autonomously even when the client is not connected to it. Like you suggested I wrote down the stats from my active crashplan backup at time '0' (# of files uploaded, total data capacity uploaded etc) and closed the terminal session (and invariably, the crashplan client session with it). I came back a few hours later, re-invoked the SSH session via terminal and restarted the crashplan client and checked the stats to find that the upload (as you clarified for me) was still going on while I was disconnected.

 

Thank you so much for clarifying that for me in such detail. I really appreciate you taking the time to help me.

Hopefully at some point crashplan will give an option in the client to be able to nicely select the network address of the engine you want to connect to. That would avoid the need for nasty tunnels and obscure file edits to force the client where to go.

 

They'd probably make it an enterprise only featur ethough :)

 

Glad it's working.

  • Author

Or better yet, someone could develop a Crashplan plugin with a web gui that has client capability so that we could configure crashplan client directly from unraid. Maybe this actually might be possible with unraid 6.0 running a windows vm where you could have the crashplan client reside?

  • 2 weeks later...

Just stumbled upon this post and thought I'd mention the method I use for connecting to the Crashplan engine running on my unRAID server.

 

I created an extremely simple shell script in my home directory that connects the SSH tunnel, then launches the Crashplan Client Java app. When I launch the client app, I don't put it in the background, so that when I'm done checking or setting things, I close the client app, and it closes the SSH connection cleanly.

 

ssh -N -L 4200:localhost:4243 [email protected] &
/Applications/Crashplan.app/Contents/MacOS/Crashplan > /dev/null 2>&1
kill $!

 

This does assume that you have shared key authentication set up for the SSH server in unRAID, and the relevant key on your mac as well. The SSH connection then never asks for a username or password.

 

In the past, I did have this all set up as an Applescript application. I'll see if I can dig that out or re-write it. If I remember correctly, I renamed the original Crashplan.app in Applications .Crashplan.app so that it was hidden, and then called my Applescript application Crashplan.app in it's place. This made everything completely seamless to any user.

OK, so I just re-wrote the applescript application, since it was incredibly simple.

 

The actual applescript is shown below, and obviously this just calls the script that I showed in my previous post:

 

do shell script "/Volumes/Macintosh\\ HD\\ 2/Users/neil/Crashplan.sh"

 

To make this look a little nicer, I called the Application Bundle 'CrashPlan unRAID', and gave it the CrashPlan icon from their application. Finally, I added the following key to the new application's Info.plist file. This key prevents the applescript application itself from having a dock icon. Because the script calls the real CrashPlan application, there would be two icons in the dock if this wasn't done.

 

<key>LSBackgroundOnly</key>
<string>1</string>

 

I did try to attached a zip of the application, but I got a message saying that the upload folder was full. To be honest, it's probably easier to make it yourself than download it and put it in the right place anyway!

As a last tweak...

 

You can't move the original CrashPlan application because it will stop working. You can however 'hide' it from the OS X UI with the following Terminal command (run as sudo):

 

chflags hidden /Applications/CrashPlan.app/

 

After this, you'll only have a single CrashPlan application on your mac, that only connects to unRAID, and no messing with the Terminal.

Archived

This topic is now archived and is closed to further replies.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.