
Ask HN: Hackable external wireless SSD storage? - kencausey
I&#x27;ve been looking at the Western Digital My Passport SSD Wireless devices with the idea of setting this up for a client for local server backup.<p>I already have the client setup for backup to remote storage (rsync.net) but for redundancy and speedier access in the case of an emergency I would like them to have access to a local backup.  However, through prior experience, I&#x27;ve learned that if any effort is required then eventually good practice stops.<p>So my thought is to have a small box that the user takes home (to avoid loss due to fire or other catastrophe at the office) and then at least once a week brings in to the office for the day and then takes home again.  The &#x27;box&#x27; would automatically connect to the local wireless network and would be able to use something like rsync and would have access to the server necessary to make a full backup hopefully before the user leaves for the day. I&#x27;m thinking SSD is a better choice than a spinning disk for reliability while being carried around regularly.<p>A little research on the Western Digital wireless storage devices suggests linux is running underneath and that it is possible to enable SSH, login as root, and start hacking.<p>I guess my question is has anyone here actually done that and can you provide any additional details?  As far as I can tell this is not something that is officially supported by Western Digital.<p>Alternatively is anyone aware of a similar device (mostly closed box, rechargable internal battery, wireless accessible) that either has internal SSD storage or into which an SD card can be installed that also has a *nix filesystem underneath?<p>Access to a solid ZFS implementation would be a plus.
======
orev
This sounds over-engineered. Why not just setup something the user can leave
connected to their home Internet connection and do the backups through there?
In an emergency the user could simply drive home to get it.

If you’re already thinking SSD, it’s probably not that much data. Then they
don’t need to do anything other than set it up once. I think your plan of
having them transport it to the office once a week has the same flaw you
already mentioned (any effort needed on their part and it doesn’t happen). And
if they don’t have to transport it, you can use an HDD and get a lot more
space. Syncthing could handle the syncing.

------
wolrah
For the level of customization you're looking for, it sounds like what you're
looking for here is called a "laptop computer"

Failing that, I'm pretty sure a few of the NAS brands support WiFi adapters
being installed in to M.2 slots or USB ports. Couldn't help you with your
battery requirement, but I'm not really seeing why it'd be useful in this
application.

Personally, I'd just do it with a normal wired NAS if the only time it needs
to be on a network is at the office. Have a defined station for it where
there's always a wire and a power cord locked down. Hell, in a lot of cases a
USB drive works just as well.

~~~
InvaderFizz
> For the level of customization you're looking for, it sounds like what
> you're looking for here is called a "laptop computer"

Yep, and it also won't end up working how OP envisions.

Any backup solution that requires manual intervention(like weekly
transportation and plugging in) is doomed to failure.

Since you are already using ZFS, setup your offsite NAS, replicate snapshots,
and bring it on site for a restore. This way everything is set and forget.

You can use something like sanoid/syncoid to manage your snapshots and
syncing. Setup email alerts on either side if there has not been a sync in a
while, and setup the target to be a samba/nfs share with those services turned
off. That way recovery is bringing it back on site and turning on the share.

------
dangus
So rsync.net is your cloud storage backup solution, and you also want
something local that can be customized. But you want to...have the user carry
it to and from work?

They'll never use that. That sounds incredibly annoying.

You've already got cloud storage. Add alerting for yourself if the user hasn't
backed up within an acceptable period of time. Your user will always connect
to the Internet wherever they are, so the backup will keep happening as long
as you've set it up right.

Then, hook up a spinning USB drive to their laptop dock at work or whatever,
and enable Time Machine/Windows Backup.

Anything more than that is:

1\. An indicator that the primary place for this important data to live on
shouldn't be a portable workstation, it belongs on a well-engineered server in
multiple data centers getting professionally backed up.

2\. Over-engineered and prone to break anyway

3\. Impossible to maintain once you stop being their provider

Finally, the most important part of backups besides backing up is to test your
restoration solution. If you've never tried to restore your backup you don't
really know that it's a backup at all.

~~~
rsync
"You've already got cloud storage. Add alerting for yourself if the user
hasn't backed up within an acceptable period of time."

To wit: rsync.net has user-customizable "idle alerts" (or, inactivity alerts)
that you can set at any threshold you like and which will generate any
combination of emails, SMS, pushovers or webhooks.

"Then, hook up a spinning USB drive to their laptop dock at work or whatever,
and enable Time Machine/Windows Backup."

... and although I am certain the OP knows this, just in case, let me point
out that your .zfs/snapshot directory contains user-configurable "snapshots"
of your entire account that are live, browseable and _immutable_. So whatever
you set up with Time Machine, you can set up in your rsync.net account with
ZFS snapshots.[1]

[1] By default, 7 daily, but configurable to any combination of
days/weeks/months/quarters/years ...

------
peterburkimsher
I've made a rather hacky system that I carry everywhere, and allows up to 1 TB
of backup in my pocket. It's not SSD-based though, it's only SD card, so it's
slower. For backups I don't really worry though, because the incremental size
is small.

I've got a SanDisk 512 GB SDXC card, into an SD female to microSD male ribbon,
into a PQI Air Card (same firmware as Transcend, hackable with Ubuntu [1]),
into an iFlash Dual, into an iPod 5.5G.

Usually I just use it for listening to music, but I can also use it as an SD-
to-WiFi adaptor. Airport security thinks it just looks like a normal iPod.

Photo on Reddit. [2]

[1]
[https://dmitry.gr/?r=05.Projects&proj=15.%20Transcend%20WiFi...](https://dmitry.gr/?r=05.Projects&proj=15.%20Transcend%20WiFiSD)

[2]
[https://www.reddit.com/r/ipod/comments/9ldj8g/wipod_ipod_vid...](https://www.reddit.com/r/ipod/comments/9ldj8g/wipod_ipod_video_as_an_sd_cardtowifi_hotspot/)

------
mceachen
If you want backups from one system to another, I've been really impressed
with Resilio Sync, which is commercial software, and Syncthing, which is open
source. They've both got win/Mac/Linux/iOS/Android ports, and don't require
either the client or the server to have publicly available ports open.

Odroid makes a couple "home cloud" variants of their single board computer,
which lets you plug a 2.5" SSD (or a larger variant that support 3.5" spinning
rust) into a SBC mounted onto a solid aluminum heatsink.
[https://www.hardkernel.com/shop/odroid-hc1-home-cloud-
one/](https://www.hardkernel.com/shop/odroid-hc1-home-cloud-one/)

You'd run Ubuntu server on the odroid, so BTRFS and ZFS would be available.

Whenever the odroid was powered up and had network, the sync client would
connect and send deltas.

Disclaimer: I don't have any financial interests in the above companies. In
building PhotoStructure, though, I get asked frequently how to back up photos
and videos on people's smartphones, and personally needed a solution that
could come with me and my family on trips, and also run PhotoStructure locally
on the odroid. This is the setup we use. BTW: It's super convenient to sync at
50mb/s even when your internet WAN speed is something abysmally slow and has
high packet loss.

------
dewey
You don’t say anything about the client machines but in general I’d very much
avoid trying to reinvent the wheel especially for critical systems like
backups. It’s hard enough to do right so adding another layer of hacked and
glued together software is not what you want.

Can’t you use Carbon Copy Cloned or TimeMachine and set them to start the
backup as soon as the disk is attached? Just add a calendar event to notify
the user to bring the disk home from time to time.

------
anotherhue
Wrote this up some time ago, might suit your needs: RPi based encrypted ZFS
mirror on external storage.

[https://github.com/hughobrien/zfs-remote-
mirror](https://github.com/hughobrien/zfs-remote-mirror)

~~~
dbtx
+1 for the Pi.

I'm in the middle of tweaking BackupPC [1] on Slackware in one of these so it
will regularly pull updated files from the handful of Windows machines, and
ransomware won't be able to know it exists. The only thing on each Win box is
a cygwin-powered rsync daemon; it doesn't need write access to any outside
filesystems or services.

In the back of my mind, I think it could be used to set up a sort of tripwire
for the presence of ransomware-- lots of files would be changed in a short
time (unless said RW also decrypts them all silently and transparently on
access, until the time comes to drop the ax on you-- that would only defeat
the tripwire and most if not all of the files would be still saved in old
backup sets anyway). Since it only stores identical files once, the change in
space required for a single full backup will suddenly jump, and all you'd need
is one automated email alert like the others.

Sorry that the thing doesn't actually do its job yet and I haven't likewise
written anything up :(

[1] [https://backuppc.github.io/backuppc](https://backuppc.github.io/backuppc)

~~~
dbtx
At the same time, there's a 'hosts allow' directive with the Pi's IP in the
rsync config stored on each Win box, so it's not really invisible. Also,
someone _might_ save the password to the BPC web frontend in their browser, so
a sufficiently clever RW _could_ still wreck everything here. I hope it's just
that the web server needs some 2FA/OTP.

------
rsync
We (rsync.net) are happy to ship you a bare SATA drive with any or all of your
account on it. It's a standard part of our offering and we do it all the
time[1].

No funny business - just our actual cost for the drive + our actual fedex
costs + $150.

So that's one option.

The second thing that comes to mind is that, as you already know, _any_ tool
that runs over SSH/SFTP will connect to your rsync.net account. So, in a
pinch, you could just use our drive mapper (or filezilla or WinSCP or sshfs on
Mac or whatever) and let the client poke along at WAN speeds for a day or
three.

Finally, I disagree with some of the comments that suggest this is overkill or
unnecessary - I think it's a decent line of thought - but why not just add a
line item to your clients' bill for "local DR service" and just dump the
rsync.net account _back to yourself_ on any old drive that you control and if
there is indeed a catastrophe you just drive it over there ?

Happy to discuss this further over email, etc.

[1] Almost always for DR drills - thank goodness ...

------
techntoke
Checkout CrashPlan for Small Business. You get unlimited versioned storage for
$10 a month, and you can backup to multiple devices as well if you want to
setup an offsite backup, like a home computer or laptop. I personally run it
in a Docker image (which can be used with Synology or unRAID), since I use
Linux for my desktop:

[https://hub.docker.com/r/jlesage/crashplan-
pro/](https://hub.docker.com/r/jlesage/crashplan-pro/)

------
bronco21016
I too was looking at the My Passport drive and although it does seem to be
hackable I decided to go a DIY route. Primarily I just didn’t want to have to
keep tinkering with software and likely compiling from source constantly. I
also wanted the ability to encrypt the volume and there was no clear path to
doing that on the My Passport.

My use case is slightly different than yours though. My goal is to make a
travel portable NAS. I can connect SD cards, any wireless device, or any USB
device. I have access to my media on my server but public/hotel WiFi can make
accessing video a pain. I’m editing on an older iPad that is storage limited
as well. I just wanted to be able to have local copies of media accessible
over WiFi for use on phones/tablets.

My solution was a NanoPC-T4 with a 1 TB m.2 SSD. Using hostapd it acts as a
hotspot and using samba it shares files. My todo list includes adding
encryption and a web interface for configuration as well as some kind of
battery power.

Anyway, from what I’ve gathered playing with all of this, a single board
computer with storage might cover your needs. The battery aspect doesn’t seem
to be a requirement in your case so just setting up a board would be easy.

------
jaclaz
>Alternatively is anyone aware of a similar device (mostly closed box,
rechargable internal battery, wireless accessible) that either has internal
SSD storage or into which an SD card can be installed that also has a *nix
filesystem underneath?

I am not sure to understand the rechargeable battery requirement.

I mean, the thingy needs to be connected to mains anyway to recharge the
battery and - before or later - it will happen to exhaust the battery mid-
backup.

Personally I would either get a "normal" UPS (that stays always in the office)
and connect to it any of the "common" mini-pc's, sometimes called "brick
pc's", like (example only) the Ibtel NUC's:

[https://www.intel.com/content/www/us/en/products/boards-
kits...](https://www.intel.com/content/www/us/en/products/boards-
kits/nuc.html)

But really, why do you want to carry with you BOTH the data AND the hardware?

Once upon a time those kinds of backups were made using ZIP disk, there was a
"backup" machine on the network with a ZIP drive and what was carried home at
night was just the ZIP disk (at the time the policy was "integral" backup
every two days and there were three disks, labeled "Monday", "Wednesday" and
"Friday" \- and yes, all the non-replaceable data did fit into 100 MB).

Nowadays all you need is either a USB disk in a case or a "cartridge like"
disk, example:

[https://www.addonics.com/category/removable_drive_system.php](https://www.addonics.com/category/removable_drive_system.php)

------
tbyehl
Datto, StorageCraft, Veeam, others have offerings that would allow you to have
an on-site backup appliance that replicates to your own cloud or someone
else's. I know Datto provides actual physical appliances, their lowest-end
model is a NUC-like thing that they basically give away with their service.

For something more roll-your-own, Urbackup's commercial offering can replicate
between appliances or to AWS / Azure. Free for up to 10 clients and 20TB.

[https://www.infscape.com/2019/03/07/community-edition-
free-f...](https://www.infscape.com/2019/03/07/community-edition-free-for-
commercial-use/)

------
vmurthy
I do love the technical parts of the discussion here but do allow a slightly
different perspective: You say it is for a client and you (presumably) can
bill the client for this extra service. That being the case, aren't you better
off using a commercial solution like others mentioned below (CrashPlan/rsync
etc) and _charge_ the client for the same? This way you have a level of
support and accountability than being liable for everything that can go wrong
with the hacks.

I would, of course, encourage your quest for a hackable Wireless SSD for your
personal projects :-)

------
viraptor
I'd stay away from things like drive-producer-specific solutions. There are
many NAS solutions which will take any drives and support raid configs. For
simple setup, check what can you run FreeNAS on. For very cheap, custom
solution, have a look at something like odroid-hc1.

------
boris
I would look into pcengines. It has everything you have described (or a port
to plug it to) except for the battery. This is my go-to device for anything
specialized (router, backup).

------
antman
Raspberry pi with openmedia vault or with Nextcloud. Easy to setup, update.

