Requirements¶
What you need before installing MonsterOps.
Operating system¶
| Distribution | Versions tested |
|---|---|
| Ubuntu | 22.04 LTS, 24.04 LTS |
| Debian | 12 (Bookworm) |
Other Debian-based distributions will likely work. RPM-based systems (RHEL, Rocky, AlmaLinux) are not tested.
Software prerequisites¶
| Component | Minimum | Notes |
|---|---|---|
| Python | 3.11 | Must be available as python3 |
| PostgreSQL | 15 | Same host or remote |
| FreeRADIUS | 3.0 | Must use the SQL module (rlm_sql) |
| Git | any | For cloning the repository (not needed for the PyPI install) |
The FreeRADIUS SQL module must be enabled and pointed at the same PostgreSQL database MonsterOps
uses. The production installer (deploy/install.sh) configures this for you when run on the
FreeRADIUS host.
Optional — VPN tunnel management¶
Only needed if you'll use the VPN module:
| Package | For |
|---|---|
wireguard-tools |
WireGuard (wg, wg-quick) |
strongswan |
L2TP/IPsec (IKEv1/PSK) |
xl2tpd |
L2TP daemon |
ppp |
PPP/CHAP authentication |
acl |
ACL write permissions to config dirs |
The production installer adds these automatically. On a development setup you can omit them — tunnels can still be defined in the UI, but you'll see a "tooling not installed" banner when you try to bring one up.
Optional — Firewall management¶
Only needed if you'll use the Firewall module:
| Package | For |
|---|---|
nftables |
Applies the managed ruleset (nft) — usually preinstalled on modern Debian/Ubuntu |
The installer adds a minimal nft sudoers allow-list scoped to table inet monsterops only —
there is no blanket nft *, so the service user can never flush your other tables. Without nft
installed, the Firewall page still lets you build and preview rules; you just can't apply them.
You don't need everything at once
Only DATABASE_URL and SECRET_KEY are truly required to run. VPN and firewall tooling are
opt-in per module — install them when you decide to use those features.
MonsterOps