Skip to content

Installation

Paco5687 edited this page Jul 13, 2026 · 5 revisions

Installation

You only install the hub once. Everything else (agents) is added from the dashboard — see Onboarding Hosts.

Requirements

  • One always-on Linux box for the hub (a NUC, Pi, spare PC, or VM).
  • curl (for the one-line installer). Nothing else — no Go toolchain needed.

1. Install the hub (one command)

Run this on your Linux hub box:

curl -fsSL https://raw.githubusercontent.com/Paco5687/autormm/main/deploy/get.sh | bash -s -- server

This downloads the latest release, verifies its checksum, installs autormm-server as a systemd user service (so it starts on boot and turns on the history database), and — on first run — generates and prints your two tokens:

  ADMIN TOKEN  (clients/dashboard): ••••••••••••••••••••••••••
  ENROLL TOKEN (agents):            ••••••••••••••••••••••••••
  • Admin token — logs you into the dashboard and the client CLI.
  • Enroll token — used by agents joining the fleet (baked into the Add host command for you, so you rarely paste it by hand).

Copy both now. They're also saved to ~/.config/autormm/server.env — re-read them any time with cat ~/.config/autormm/server.env. To pin a specific version instead of latest, prefix the command with AUTORMM_VERSION=v0.4.0.

Check it's up: systemctl --user status autormm-server.

Alternative: from a downloaded binary

If you already have the autormm-server binary (from a release or make build):

./deploy/install-server.sh --bin ./autormm-server   # installs the service + generates + prints tokens

Or just run autormm-server in the foreground — it prints the dashboard URL and admin token and saves config to ~/.config/autormm/autormm.json.

2. Open the dashboard

Browse to http://<hub-ip>:8765. Sign in with the admin token (click 🔑 → Use an access token) — or, better, create a login account (below) and sign in with a username + password. See the Dashboard Guide.

Login accounts (recommended)

The one-time admin token is fine to bootstrap, but for day-to-day access create password logins — passwords are stored as argon2id hashes in ~/.config/autormm/admins.json, and a successful login issues a signed 12-hour session token:

autormm-server admin add alice     # prompts for a password (min 8 chars)
autormm-server admin list
autormm-server admin rm alice

Once any account exists, the dashboard shows a username/password form. The admin token keeps working (for the CLI and as a fallback), so guard it. Changes take effect immediately — no restart needed.

Where should the hub live on the network?

Run it as plain IP:port on your LAN — no reverse proxy needed. It grants full control of every enrolled host, so never expose it directly to the internet. To reach it from outside your network, use a zero-trust overlay — see Remote Access.

Data & config locations

What Path
Tokens / config (auto) ~/.config/autormm/autormm.json
History + scripts DB ~/.config/autormm/autormm.db (or --db <path>)

Useful flags

Flag Purpose
-addr listen address (default :8765)
-db SQLite path for history + scripts (on by default)
-alert-cpu / -alert-mem / -alert-disk alert thresholds (percent)
-notify-webhook / -notify-ntfy / -notify-discord alert destinations
-tls-cert / -tls-key optional built-in TLS

Clone this wiki locally