Repository navigation
Linux hosts over SSH with nothing installed on them, binaries and a one-line installer for servers without Docker, and a live demo that runs in the browser. Nothing changes for an existing installation until you add a host.
Added
- SSH hosts: add any Linux machine by its address and a user in Settings → SSH hosts. dash signs in with its own key, runs one fixed read-only script and shows the machine on the new Hosts page: live CPU, memory, network and disk charts, temperatures and fans, file systems, disks and ZFS pools, containers (docker or podman) and systemd services. A full file system, a failed unit, a pool that is not online and a host that went away become attention items on the Overview. Nothing is installed on the host, dash holds no password and never writes there (the SSH hosts page).
- Pinned host keys: dash connects to a host only after an administrator has trusted the fingerprint it shows, and refuses a host whose key changed. Hosts set in the config file carry their key as
hostKey. - Release binaries: every release now has
dash_<version>_<os>_<arch>.tar.gzfor Linux and macOS on amd64 and arm64, a checksum file and a build provenance attestation. - Installer:
curl -fsSL https://dash.techdufus.com/install.sh | sudo shinstalls the binary as a hardened systemd service, creates its secret key and prints the setup link. Run it again to upgrade (the binary guide). - Live demo: the live demo is the real web UI on recorded demo data, hosted as static files. It is read-only; the container's demo mode still answers actions.
- Getting started: an Overview with nothing connected yet points administrators at adding a host.
Security
- SSH hosts need
DASH_SECRET_KEYand a writable data directory: dash's SSH private key is sealed with it incredentials.yaml. Give dash a dedicated unprivileged user on each host and add its key withrestrict. The security model and ADR 0003 say what dash runs, what it stores and what viewers see.
Upgrade notes
- No step needed. The
sshplugin stays off untilplugins.ssh.hostsnames a host. - Rolling back after adding hosts: remove
plugins.sshfrom the config file and unset everyDASH_PLUGINS_SSH_*variable first, since an older release refuses a key or a variable it does not know. The older release drops dash's SSH key at its next write ofcredentials.yaml, so after upgrading again every host needs the new public key.