RMMZit

Download RMMZit

Every link points to the newest release on GitHub. Releases are signed; the server updates itself from the same releases.

Choose how to install the server

Step by step from an empty VM to the first enrolled computers: Install a self-hosted RMM and enroll the first computers.

WayBest forNeeds
1. Ready-made VM imageImport, start, sign in — in a few minutesVMware, Proxmox/KVM or Hyper-V
2. Appliance ISOA new VM or a physical server, unattendedInternet access during installation
3. Install scriptAn existing Debian, Ubuntu, AlmaLinux or Rocky Linux serverRoot and internet access
4. Packages by handYour own PostgreSQL, configuration managementThe deb or rpm package of the release
5. DockerAn existing Docker host, NAS or home labDocker with the Compose plugin

The server needs 2 vCPU, 2–4 GB RAM and a 16 GB disk. Agents connect to it on TCP 8444; the console on TCP 8443 is only for your own networks.

1. Ready-made VM image

OVA

VMware ESXi, Workstation, VirtualBox

rmmzit-appliance.ova

ESXi Host Client: Create / Register VM → Deploy a virtual machine from an OVF or OVA file. vSphere: Deploy OVF Template.

QC

Proxmox VE and KVM

rmmzit-appliance.qcow2

Create a VM without a disk (2 vCPU, 2–4 GB RAM, VirtIO network), import the disk, attach it as SCSI boot disk.

VHD

Hyper-V (generation 1)

rmmzit-appliance-vhdx.zip

Unzip, create a generation 1 VM with 2–4 GB RAM and choose the VHDX as its disk.

On Proxmox VE, after copying the image to the node:

qm importdisk <vmid> rmmzit-appliance.qcow2 local-lvm

Start the VM: its screen shows the console address and a setup token. Open https://<address>:8443, accept the self-signed certificate once, enter the token and create the first administrator with two-factor sign-in. The appliance gets its address by DHCP; on the VM's screen, sign in as rzadmin (first password rmmzit, must be changed) to set a static address, the server name and the time zone.

2. Appliance ISO

rmmzit-appliance.iso — boot a VM or server from it. After 5 seconds the unattended installation starts: it erases the first disk, installs Debian, PostgreSQL and RMMZit in 10–20 minutes, and then shows the console address and the setup token.

3. Install script

On Debian, Ubuntu, AlmaLinux or Rocky Linux (x86-64), as root:

curl -fsSL https://github.com/Max-Zit/rmmzit/releases/latest/download/install.sh | sudo sh

The script installs PostgreSQL, downloads the newest release, verifies its signature, creates the database and starts the service. Run it again to update. Options: --version X, --db postgres://…, --no-auto-updates. To read it first:

curl -fsSLO https://github.com/Max-Zit/rmmzit/releases/latest/download/install.sh
less install.sh
sudo sh install.sh

4. Packages and agents

sudo apt install ./rmmzit-server_X_amd64.deb      # Debian, Ubuntu
sudo dnf install ./rmmzit-server-X-1.x86_64.rpm   # AlmaLinux, Rocky Linux

Set RMMZIT_DB in /etc/rmmzit/server.env, then systemctl enable --now rmmzit-server. The setup token is in /var/lib/rmmzit/setup-token.txt. These files carry the version in their name and are listed on the release page:

FileWhat
rmmzit-server_X_amd64.deb, .rpmThe server, for installation by hand
rmmzit-agent-X-x64.msiWindows agent — Windows 10, 11, Server 2016 and newer
rmmzit-agent-X-linux-amd64, -arm64Linux agent for x86-64 and ARM64
SHA256SUMSChecksums of the release files
SOURCE-CODE.txtWhere to get the source code of everything in the images

Install an agent

In the console, add a customer and a site and create an enrollment code on the site (RZ1-…). The site page offers the downloads and the exact commands — also a Group Policy startup script and the Microsoft Intune settings.

msiexec /i rmmzit-agent-x64.msi /qn ENROLLCODE="RZ1-…"                 # Windows
sudo ./rmmzit-agent-linux-amd64 install --code "RZ1-…"                  # Linux (systemd)

Agents update themselves to the server's version.

5. Docker

The server is also a container image, ghcr.io/max-zit/rmmzit, built from the same signed package. Put docker-compose.yml and .env.example into a folder, copy .env.example to .env and set a database password, then:

docker compose up -d
docker compose exec rmmzit rmmzit-server -setup-token

Ports: 8443 (console), 8444 (agents). Update with docker compose pull && docker compose up -d; the server backs up its database before a new version changes it. The tag latest follows official releases, testing release candidates.

Verify a download

sha256sum -c SHA256SUMS --ignore-missing

The server, the agents and the install script verify the signed release manifest before installing anything; see Security.

Updating

Settings → RMMZit updates checks GitHub for new releases and installs them, optionally automatically. Only releases signed with the RMMZit release key are installed; the server backs up its database first and rolls back if the new version does not start. The Testing channel offers release candidates for a test server. Settings → Console backup keeps daily backups of the database, keys and certificates for a restore on a new machine.