Options for remote Wake-on-lan. Or I guess wake on WAN.
from pineapple@lemmy.ml to selfhosted@lemmy.world on 04 Dec 00:12
https://lemmy.ml/post/39835318

So I want to setup a remote backup location at my parents house although they are very mindful about there electricity usage and environmental impact (and so am I) so I don’t want to have to have a pc always on when it doesn’t need to be.

Is it possible to setup remote Wake-on-lan so I can schedule my homelab at my place to wake up the server at my parents house and start a backup like once a week, I want to do this in a secure fashion as well so ideally no port forwarding, I currently use cloudflare tunnels for my home network.

Are there any other options or do you have a similar setup at your place?

#selfhosted

threaded - newest

Tolookah@discuss.tchncs.de on 04 Dec 00:25 next collapse

Can you set the BIOS to wake up at a certain time? Many have that option.

pineapple@lemmy.ml on 04 Dec 00:30 collapse

I didn’t realise the bios could do that I will look into that.

lemming741@lemmy.world on 04 Dec 07:56 collapse

man.archlinux.org/man/rtcwake.8.en

pineapple@lemmy.ml on 04 Dec 07:59 collapse

Arch wiki strikes again! That’s pretty cool I just checked and the bios on my pc does indeed have this feature.

pp99@sh.itjust.works on 04 Dec 00:26 next collapse

you can configure bios for self power on at certain time and then turn the server off after finishing backup

sundaylab@lemmy.ml on 04 Dec 06:26 collapse

Second that. I don’t have another node that I can use for WoL at my backup location so I opted for the node to turn on every morning, run the backup and turn off using cron at a given time. Works perfectly!

CameronDev@programming.dev on 04 Dec 00:34 next collapse

If timers on the bios aren’t an option, look for the settings to power on after power outage. If you turn it on, you can use a standard timer plug to turn the power on and off.

postnataldrip@lemmy.world on 04 Dec 00:39 next collapse

Booting on a schedule as others have suggested would be the simplest by far.

To answer as asked though, it’s not something I’ve needed to do but it sounds like a VPN + IGMP proxy (I’m assuming you have a separate subnet for your VPN) might fit the bill.

Alternatively some kind of low power device (a Pi or something) that lives in the same subnet could make the WOL call locally, and you just need to find a way to trigger it. Could do it via a http call for example.

cmnybo@discuss.tchncs.de on 04 Dec 00:43 next collapse

You could use a very low power computer that’s always on like a Raspberry PI Zero W to send the WoL packet to the backup computer. It only uses about 1 watt. Some routers have the ability to send a WoL packet as well.

artyom@piefed.social on 04 Dec 03:25 next collapse

And how do you communicate with the Pi0?

cmnybo@discuss.tchncs.de on 04 Dec 03:46 next collapse

Use SSH. Ether open a port in the firewall or connect it to a VPN. If the backups are done on a schedule, you could also setup a cron job on the Pi to send the WoL packet a few minutes ahead of time.

AtariDump@lemmy.world on 04 Dec 05:49 collapse

Use a VPN; don’t open up SSH to the internet.

Creat@discuss.tchncs.de on 04 Dec 05:51 next collapse

Ssh over Internet is fine as long as it’s properly setup (no password auth, root not allowed, etc.). Obviously a VPN is even better.

cecilkorik@piefed.ca on 04 Dec 06:04 collapse

Or just be cautious, thoughtful and sensible if you do. Only a Sith deals in absolutes.

BCsven@lemmy.ca on 04 Dec 04:50 collapse

Wireguard between you and remote device like a pi. Set pi to portfowarding and masquerading on. It will then let you be on say a 10.x.x x network remotely but will send info on the remote LAN like it came from that pi local IP

JustEnoughDucks@feddit.nl on 04 Dec 10:45 next collapse

You can even use an ESP32 or similar since it just has to perform 1 tiny function.

Getting an WT32-ETH01 knockoff dev board for 15€ or PoE for 25€ and uses <300mW with the wireless modem off. You could even just use a WiFi module for 8€ if you don’t want something wired.

registry.platformio.org/libraries/…/WakeOnLan

There is already an wakeonlan library to generate a packet very easily.

You can even do it in pseudocode with ESPHome if you have HomeAssistant

community.home-assistant.io/t/…/617595

Then VPN in, send a signal to the esp using one of various methods to tell it to send the packet.

WhyJiffie@sh.itjust.works on 04 Dec 12:17 collapse

Then VPN in, send a signal to the esp using one of various methods to tell it to send the packet.

this sounds like it requires another computer already turned on

faercol@lemmy.blahaj.zone on 04 Dec 12:55 next collapse

Depends on your hardware. My routers can serve as a Wireguard serveur, so no need for a computer for that part

WhyJiffie@sh.itjust.works on 04 Dec 21:51 collapse

the only router firmware I have seen be able to do that is openwrt, and maybe mikrotik’s. none of these are common though, but if you can do this then yes this is a pretty efficient solution

JustEnoughDucks@feddit.nl on 05 Dec 06:30 collapse

Sure, but you can’t access your home network anyway if your router is turned off…

I have yet to encounter a router made in the last decade that couldn’t. Asus routers, even my 15 year old tplink archer A7 could, ubiquiti always can, openwrt, pretty sure at work we did testing with a dlink router and it also had that option.

Pretty much if you don’t use a Linksys 100Mbps router from 2005, you can at least do openvpn if not wireguard.

WhyJiffie@sh.itjust.works on 05 Dec 06:37 collapse

Sure, but you can’t access your home network anyway if your router is turned off…

of course but most routers won’t do anything like this. and by router I mean the all in one devices people have, not enterprise gear.

Asus routers, even my 15 year old tplink archer A7 could

with factory firmware?

JustEnoughDucks@feddit.nl on 05 Dec 06:56 collapse

Yep, openvpn with factory firmware. It even had a (limited) choice DDNS services for self hosting, on a cheap consumer router. I could never figure out if NAT hairpinning worked though.

Almost all routers have an “advanced” section where you get a lot if these nice options.

I have only bought a ubiquiti device in the last few years though, so I guess it is possible that routers have been enshittified like a lot of tech products with features locked behind a paywall.

WhyJiffie@sh.itjust.works on 05 Dec 18:47 collapse

I think the reason why I don’t remember seeing these functions is because most people here tend to buy the cheapest stuff and that’s what what I have to deal with

pineapple@lemmy.ml on 09 Dec 07:50 collapse

thats a good idea, although wifi is not reliable enough for me. Although I found this guide which shows how to add an ethernet port to a PI zero w so hopefully I can use that. Or maybe I should just use a ESP32.

modular950@lemmy.zip on 04 Dec 01:04 next collapse

it ain’t pretty, and may not quite suit what you’re looking for. other comments recommending a pi or similar are likely better taste. but here’s what I’ve done:

I have a cheap Android tablet that stays home and is connected to our home network. if needed, I connect to the tablet with TeamViewer and use a WoL app to send the packet to my computer on that same network.

Skullgrid@lemmy.world on 04 Dec 01:44 next collapse

Just ask Ian to start your computer when he goes on it

pineapple@lemmy.ml on 04 Dec 07:53 collapse

Lan is not the name of my parent 💀

brickfrog@lemmy.dbzer0.com on 04 Dec 01:48 next collapse

Wake on LAN is a LAN feature, not WAN, so you’d need to issue that over the local LAN there at the house. You’re going to have a hard time trying to get that working over the WAN (if that’s even possible).

The other comments mentioning a scheduled boot would be a much easier/simple solution if it works for you.

But I’ll throw this in, the super basic least tech solution to this is to open a port forward to the house’s network router. Yes, I know you don’t want to do that, but it’s probably the only network device at that house that’s actually on 24/7 right? And by all means lock it down however you like. My simple method is to open the router login to a non-standard port number, with a IP whitelist, add my own home IP address to that IP whitelist, and bam you now have access to that remote home’s router for just your IP address. Log in remotely, issue a wake on LAN via the router’s own web ui, done.

It’s perfectly reasonable to make this a bit more secure if you wanted but it gets slightly more complicated - open a non-standard port for SSH access to the remote router’s SSH port that only allows SSH login with key. Generate a SSH key and share that key with yourself, then you can log in remotely to that remote house via non-standard SSH port using the SSH key (no user/passwords). From there you’d have to see if you can issue Wake on LAN on the SSH command line, or set up a SSH tunnel from that remote LAN to yours so you can proxy into the router login page and do your Wake on LAN from there. … yes I realize this got complicated :/ But you’ve got a few things to explore given your patience for tinkering with this stuff :)

Of course much of this relies on that house’s router having any of these features to enable and configure. The main takeaway here is that Wake on LAN requires something on 24/7 at that remote LAN for you to enable remote access into and issue a Wake on LAN command within that LAN. How to actually accomplish that is the tricky bit.

badlotus@discuss.online on 04 Dec 01:50 next collapse

I use Upsnap on a low-power SBC behind a reverse proxy: github.com/seriousm4x/UpSnap

Before that I used the WoL feature on my Asus router.

i_stole_ur_taco@lemmy.ca on 04 Dec 03:11 next collapse

I do backups with a Raspberry Pi with a 1TB SD card and leave it on all the time. The power draw is very small and I think reasonable for the value of offsite backups.

My personal experience with WOL (or anything related to power state of computers) is that it’s not reliable enough for something offsite. If you can set something up that’s stable, awesome, but if your backup server is down and you need to travel to it, that suuuucks.

pineapple@lemmy.ml on 04 Dec 07:44 next collapse

I already have 2x2tb hard drives, a singular sd card is not enough for me I need some level of redundancy even for my backups.

dustyData@lemmy.world on 04 Dec 10:56 collapse

Friendly warning that SD cards are not a backup. Those things die, frequently and without warning. They also bitrot fast. If you value the data being backed up, choose a more stable medium.

comrade_twisty@feddit.org on 04 Dec 06:04 next collapse

Home Assistant can send wake on lan commands.

If you have a remotely accessible Home Assistant Server on your LAN it can send the commands for you on the LAN while you access it remotely.

pineapple@lemmy.ml on 04 Dec 07:45 collapse

I don’t have home assistant setup in my parents place, that is a nice feature though I might use that for other things.

drkt_@lemmy.dbzer0.com on 04 Dec 07:34 next collapse

I’ve been mentally experimenting with an ESP32 hooked up to my desktop’s PWR header with a switch. I’ve done worse than that before, so I know it’ll work. I just haven’t gotten my ass around to it. I can send commands to it through my domain via Apache acting as a reverse proxy.

pineapple@lemmy.ml on 04 Dec 07:46 next collapse

That actually seams pretty awsome, just using a really low powered device to send WOL commands.

B0rax@feddit.org on 04 Dec 09:56 next collapse

There are ready made modules for it that slot into an unused PCIe slot into your case. They are available on aliexpress, search for „tuya WiFi pc power switch)

antimongo@lemmy.world on 04 Dec 13:12 collapse

Hey I did exactly this a few years ago! Uses an optocoulper for isolation. I flashed ESPHome on it and connected it to my Home Assistant instance.

Works like a charm!

I also hard wired the ESP power pins to the PC via a spare USB header. Then I enabled a BIOS setting to keep USB ports powered when shut down, so it’s a super seamless install.

<img alt="" src="https://lemmy.world/pictrs/image/adbda036-5836-4f41-86af-c73ce0e0425a.jpeg">

Only problem I’m having with it lately is since I run a dual boot system, my default GRUB option is Linux, but sometimes (unfortunately) I need to get into Windows. It’s a bit of a pain to have to update grub to change the default then restart again. I’d rather build in some sort of selection functionality the first time it boots.

I’ve been playing around with using another ESP32 as a filesystem USB device, then having grub read the content of a file on said ESP32, either “windows” or “linux”, then booting accordingly. That’s a work in progress tho

FrederikNJS@lemmy.zip on 04 Dec 12:32 next collapse

I have a Raspberry Pi with a Wireguard VPN on it. So on my android phone, I connect to the Wireguard VPN, and then I use this app to trigger the WakeOnLan:

play.google.com/store/apps/details?id=com.bitklog…

TeddE@lemmy.world on 04 Dec 14:31 collapse

For a reliable and useful remote control solution, you’re looking for an IPKVM with ATX power control. To setup the power control, you effectively set up a parallel circuit where your power switch connects to the motherboard, letting the KVM effectively press the power button ‘normally’. As a bonus, you can connect to the video and data of the KVM for even more remote control options, like be able to troubleshoot boot issues or load a virtual CD/DVD to upgrade the OS.

For tinkerers, I recommend the PiKVM, either DIY or Preassembled. It’s important to know that a RaspberryPi is energy efficient compared to an x86. This guy crunched the numbers

If you’re looking for a product instead of a project, I’d recommend JetKVM.

pineapple@lemmy.ml on 04 Dec 23:30 collapse

That is a lot of money for me, especially if all I need it to do is simulate the on button. Surely there is some really cheap arm based device that has an ethernet port and can therefore send WOL signals.

TeddE@lemmy.world on 05 Dec 00:20 collapse

I’m not sure what to tell ya. A cheap ARM device is the CanaKit 2GB Raspberry Pi 4 starter kit costs $110, but the JetKVM I recommended above including the ATX adapter is also $110

www.amazon.com/…/B07V2B4W63/

www.wisdpi.com/products/jetkvm

www.wisdpi.com/products/atx-extension-board

The only setup I can imagine that’s technically cheaper is an esp32 flashed with firmware, as discussed by another user (you already replied to it): lemmy.world/comment/20842145

But the esp32 (regardless of if you use a wire to simulate a button press, or have the device generate the WoL packet) is gonna be a pain to setup and flash by comparison to the other options.

If you already have a pi, it just needs to be flashed with Raspbian and install the app etherwake ‘sudo apt-get install etherwake’ and run it with ‘sudo etherwake [target MAC]’.