So after troubleshooting using the firewall and the Cisco Meraki Switch, testing the WOL from the firewall and the switch, with it successfully running.
The OptionKey is a Technology blog. How to tips and useful documentation on Apple, Microsoft, Open Source Project.
Sunday, March 30, 2025
2025 - Update to How to setup an automated WakeOnLan with Cisco Meraki using MAC allow list
So after troubleshooting using the firewall and the Cisco Meraki Switch, testing the WOL from the firewall and the switch, with it successfully running.
Wednesday, August 04, 2021
Setting up a WOLS server
What is a WOLS server? WOLS is my acronym for Wake On Lan Shutdown server. I deploy these in organizations that want to have scheduled startup and shutdown system for any windows clients.
You have to get some information from the Windows Client.
If your not on a domain or if you want to use a local admin, create a local admin account, I called my sysadm and add them to the administrators group. Give them a good password.
Then you will need the mac address and IP of the machine(s) you want to wake and shutdown,
Allow firewall rules that allow wol (wake on lan) packets ICMP for echo requests
RPC firewall rules
Configure registry for remote access.
Then open regedit.exe through the start menu search or run box, and go to
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
To remove this tweak you can set the value to 0 or just delete the key.
Install SAMBA.
sudo apt-get install samba
one done you should be able to run the following example and it should shut down the windows machine.
net rpc shutdown -I 192.168.18.x -U sysadm%$PASSWORD -t 1 -f
Now setup Wake On Lan
The etherwake command sends a Wake-On-LAN “Magic Packet” under Linux operating system
To install etherwake
sudo apt-get install etherwake or net-tools
then in the terminal type
wakeonlan xx:xx:xx:xx:xx:xx
replacing the xx:xx:xx:xx:xx:xx with the mac address of the machine you want woke up.
You can view the video on youtube. https://youtu.be/4WOMYpmkKyM
Wednesday, June 30, 2021
How to fix crontab scripts that won't run on Ubuntu 20.04
I've setup what I like to call WOLS (Wake on Lan & Shutdown) servers for a while now; 10 years to be exact. They are very handy and require little to no system resources; I usually set them up on Hyper-V systems but have also done it on KVM and VMware. It is very handy if your wanting to schedule systems for auto on and off without buying a commercial server or software. You also don't have to have it connected to your domain if you don't want it to be.
I setup a new server on Ubuntu 20.04 for managing the WOL/Shutdown for a remote location and set it up just as I have done in the past; but something was wrong. It wasn't working. The system was not turning on or shutting off the systems it was suppose to be.
For the purposes of this post lets say we are going to run all of our scripts out of /scripts/cron
You can use crontab -e or sudo crontab -e to edit cron, I prefer to modify the /etc/crontab file myself. So when I build my WOLS server and modify the crontab file it usually looks something like this.
After I install the the required tools, WOL, samba tools, etc I white list the, WOL ports, SAMBA and remote desktop/Remote Access ports access though the firewall on both the client and the server. You can also disable the firewalls, though I don't recommend that.
The Startup Script is a shell script called startup.sh and it looks like this
I have found that if I don't put it in the arp cache I tend to have problems if the system has been off for a while.
sudo arp -i -s $IPADDRESS $MACADDRESS #COMMENT
example:
sudo arp -i -s $192.168.0.6 #FF:CC:DD:33:22:00
Then send the WOL Packets
sudo -i -u $SERVERUSER -p $PASSWORD wakeonlan -i $IPADDRESS $MACADDRESS #COMMENT
example:
sudo -i -u serveradm -p password wakeonlan -i 192.168.0.6 #FF:CC:DD:33:22:00
so you use the server usename and password to run the wakeonlan to the ipaddress with the specified mac address. The same is true with the shutdown script but you are using net rpc and you put in the windows client username and password behind the -U in quotes with a % separating the username and password as shown below.
The shutdown script is also a shell script called shutdown.sh and looks like this
sudo -i -u $SERVERUSER -p $PASSWORD net rpc shutdown -I $ipaddress -U "windowsclientusername%password" -t -1 -f
sudo -i -u serveradm -p password net rpc shutdown -I 192.168.0.6 -U "joedirt%mopboy5" -t 1 -f
run-part --test /scripts/cron
When I run the scripts using sudo run-part /scripts/cron they also execute where they did not before.
Monday, March 09, 2020
Setting up and configuring wol and rpc remote shutdown for windows clients
Requirements SAMBA, Windows Admin and Password, Linux Admin and Password
Put startup/shutdown scripts in /etc/cron.daily
Startup
sudo -i -u $linuxAdminUser -p $password wakeonlan -i $IPADDRESS $MACADDRESS
Shutdown
sudo -i -u $linuxAdminUser -p $password net rpc shutdown -I $IPADDRESS -U $WindowsADM%$password -t 1 -f
Use Crontab to setup scheduling
![]() |
Crontab schedule |
For more information about crontab, you can visit this link about crontab
Here are the break down of the examples above
at minute 00, hour 12, * - no value (day of the month), * - no value (month), 5 the fifth day of the week (friday), user to run the script and script to run.
So the following example "00 12 * * 5 root /etc/cron.daily/shutdown.sh"
- An administrator account (not called administrator as windows 10 upgrades disables this with each update)
- RPC and Remote Access Firewall Rules Allowing (I also allow ICMP and Ping) for remote management with services such as lansweeper and FOG
- Updated Intel network driver
![]() |
Wake on Link Settings - Disabled |
![]() |
Wake on Magic Packet - Endabled |
![]() |
Wake on Pattern Match - Enabled |
![]() |
Wait for Link - Auto |
![]() |
Version 25 of the Intel network driver and proset tools |
![]() |
Intel Proset software and drivers |
![]() |
Adapter driver Options |
![]() |
Teaming and Vlans |
RPC shutdown from Linux
sudo -i -u $linuxAdminUser -p $password net rpc shutdown -I $IPADDRESS -U $WindowsADM%$password -t 1 -f
![]() |
RPC SHUTDOWN ERROR |
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
![]() |
Change the LocalAccountTokenFilterPolicy to 1 |
References
Replacing a drive and repairing a storage spaces volume
When you have a drive fail in a storage spaces, changing out the drive isn't straight forward, however well worth the effort when you co...
-
When working in a test environment you don't exactly want something to have internet access; so you need to be able to download files in...
-
To see a video of the Rustdesk installation visit https://www.youtube.com/watch?v=t7UobpjDsRY and if you like the content please like and s...
-
The organization I work for uses Lenovo Thinkpads and we purchased Lenovo USB C docks for those laptops and on the two of the new Gen 11 Int...