SparkBox diagnostic info ------ URL: http://homelab.tailfbd294.ts.net User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:150.0) Gecko/20100101 Firefox/150.0 License tier: unlicensed Containers: 17 running --- Hi all, I came across the launch video a few days ago and got round to starting off yesterday. I have been looking for something like this for a few months as I was struggling to get started with a homelab. I have got the system installed on a laptop running debian and have been successfully connecting and doing some tasks however I cannot get the license activation to complete. I am trying to check the tailscale connection and get the message "This action requires an activated license — free for personal use, activate from Settings → License." however when going to that page and attempting activation I get no response and the license key does not generate. I am also having an issue with WIreguard. It has successfully installed, however the password I set upon installation does not work and I am greeted with an "Unauthorized" message. What is the best next step here?
7 replies
tomspark wrote:
Two things, both fixable. License: the activate endpoint requires recent reauth (within ~5 min of last login). If you're past that window the click looks silent. Log out, log back in, then go Settings → License and try right away. If it still fails, open F12 → Network tab and watch the POST /api/license/activate when you click — paste the status code and response. WireGuard: install hashes the password to /opt/sparkbox/.env as WGPASSWORDHASH. Easiest reset: SSH in, sudo nano /opt/sparkbox/.env, blank the WGPASSWORDHASH= line, save, then sudo sparkbox restart vpn. wg-easy will let you set a fresh one on first load.
JGL wrote:
RE License: I am getting status code "400 Bad Request" RE WireGuard: I have done as explained above. On reload of the wireguard module I am able to directly access the system. However I am now getting the message "Could Not Load Settings" when entering the settings menu, and "Unauthorized" when trying to do anything within the settings.
tomspark wrote:
For the license 400 — request goes through but the server is rejecting it as malformed. Open F12 → Network → the failing POST /api/license/activate, paste me Request Payload and Response body. The response usually names which field is missing or bad. For WireGuard, blanking the hash put wg-easy in setup mode but the Settings page still needs auth. Generate a proper hash and set it in .env. SSH in and run: docker exec sb-wg-easy wgpw 'yourpassword' Copy the bcrypt hash it prints, paste it back into /opt/sparkbox/.env as WGPASSWORDHASH=<hash, then sudo sparkbox restart vpn. Log in with your password and Settings will load.
JGL wrote:
License 400: Request is: key "SB-PRO-PMUPQFWX-9OXUY1J2" purchaseEmail "jglawsonnqyc@gmail.com" [{"key":"SB-PRO-PMUPQFWX-9OXUY1J2","purchaseEmail":"jglawsonnqyc@gmail.com"}] Response is: ok false error "Key status: free" message "Key status: free" activations null maxActivations null reason null [{"ok":false,"error":"Key status: free","message":"Key status: free","activations":null,"maxActivations":null,"reason":null}] Wireguard: I have now stopped getting the messages within the settings, however I am now getting the "Unauthorized" message when trying to log in again.
tomspark wrote:
License: "Key status: free" means the server has it on file as free-tier, but the auto-activate isn't completing — that's a bug on my end, not yours. Standing by while I check the license-server side. In the meantime the system's fully usable in unlicensed mode for everything that doesn't gate (basically everything during beta). WireGuard: bcrypt hashes contain $ characters and Docker Compose treats those as variable refs. In /opt/sparkbox/.env, double every $ in your hash — $2a$12$... becomes $$2a$$12$$... Save, sudo sparkbox restart vpn. That makes the hash reach wg-easy intact.
JGL wrote:
Okay, hopefully the activation is a simple fix! RE wireguard, there are no instances of the $ character in /opt/sparkbox/.env. Any further advice?
tomspark wrote:
That's odd — bcrypt hashes always contain $ chars. If there are zero $ in .env, the WGPASSWORDHASH= line is either empty or got truncated when written. Paste the output of: sudo grep WGPASSWORDHASH /opt/sparkbox/.env And separately, when you ran docker exec sb-wg-easy wgpw 'yourpassword', what did it print? Copy that exact output. With those two side-by-side we can tell whether the hash never got generated or just never made it into the file.