Windows Installer
On Windows the MSI installer sets up the ncclient CLI, an unelevated tray control UI, and a background Windows Service that does the actual work as LocalSystem - no UAC prompts for enrolling, starting/stopping, or applying split-horizon DNS.
What the installer includes:
- ncclient – CLI for enrollment and daemon (poll for config/certs, run or restart Nebula).
- ncclient-tray – Unelevated system tray control UI: enroll, settings, and start/stop/restart the background service.
- ncclient-service – The
NebulaCommanderServiceWindows Service that polls for config/certs and runs Nebula asLocalSystem. Starts automatically at boot; the tray talks to it over a local named pipe.
All three are installed to %ProgramFiles%\Nebula Commander\. The installer can add that directory to PATH, creates Start Menu shortcuts, and registers/starts the service.
Getting the installer:
- Download
NebulaCommander-windows-amd64.msifrom the GitHub Releases page for the version you want. - Use
SHA256SUMS.txtin the same release to verify the file.
After install:
- Open the tray app from the Start Menu and use Enroll: paste the server URL and the one-time code from Nebula Commander (Nodes → open the node → Enroll). This is the recommended way to enroll after an MSI install - it writes the token where the service reads it (
%ProgramData%\nebula-commander\) and immediately notifies the service to fetch config. (The CLI’sncclient enrollwrites to a separate per-user location the service does not read from, so avoid it for MSI installs unless you’ve explicitly redirectedNEBULA_COMMANDER_CONFIG_DIR.) - The service starts polling automatically once enrolled - nothing else to run. Use the tray’s Start/Stop/Restart Service menu to control it, and Settings to change server URL, poll interval, or enable split-horizon DNS. See Windows Tray in Usage for details.
For building the MSI yourself, see Development: Manual builds.