SuperDMZ
Back to the blog
Tutorials · · SuperDMZ Team

Weekly scheduling via CLI on Linux and macOS — up to 25 windows

How to keep tunnels offline overnight to save traffic, or online only during business hours. All via command line, no GUI needed.

Starting with v1.8.6, the Linux and macOS client gained complete weekly scheduling — the same logic as the Windows client, but exposed via CLI instead of a graphical panel.

What it's for

  • Customer that only needs the tunnel during business hours — stays offline the rest of the time, saves traffic
  • Demo server you want to keep up only during a pitch to an investor
  • Scheduled maintenance overnight (you know the server will be down between 2am and 4am every Sunday)
  • Compliance / SOX / LGPD — auditors need to know the system is only reachable during defined hours

Turn the scheduler on

sudo superdmz -scheduler-on

Without that, any window created is ignored (it's opt-in).

Create a window

Syntax:

sudo superdmz -schedule-add \
    -days=<CSV 0-6> \
    -start=<HH:MM> -end=<HH:MM> \
    -mode=online|offline \
    [-tokens=<CSV of tokens>] \
    [-note="free text"]

Where -days uses 0=Sunday, 1=Monday, …, 6=Saturday.

Practical examples

1. Tunnel only during business hours, weekdays:

sudo superdmz -schedule-add -days=1,2,3,4,5 \
    -start=08:00 -end=18:00 -mode=online \
    -note="business hours"

2. Maintenance window (offline) overnight Mon-Fri:

sudo superdmz -schedule-add -days=1,2,3,4,5 \
    -start=22:00 -end=06:00 -mode=offline \
    -note="maintenance window"

3. Window specific to 2 tunnels (per-tunnel scope, new in v1.8.5):

sudo superdmz -schedule-add -days=0,6 \
    -start=00:00 -end=23:59 -mode=offline \
    -tokens=AABBCC1122334455...,DDEEFF6677889900... \
    -note="these tunnels don't run on weekends"

List and remove

sudo superdmz -schedule-list
# [1] id=abc123 · Mon/Tue/Wed/Thu/Fri 08:00→18:00 · mode=online · all tunnels · active

sudo superdmz -schedule-delete=abc123

Manual pause wins

sudo superdmz -pause-all keeps everything stopped regardless of what the scheduler says. Handy for emergencies.

Where it's persisted

Everything in /etc/superdmz/config.json. Changes take effect in up to 2 seconds (file watchdog). The scheduler re-evaluates every 30 seconds to catch time-of-day transitions.


Want to try SuperDMZ?

Free plan, no credit card. Your first tunnel runs in under 60 seconds.

Create a free account

More in Tutorials