Vinza Server
Vinza Store Vinza Server
Vinza Server
Free System
multi-serverclusterremotenodesagent
Get this app
Free
Available to all users. No license needed.

Vinza Server turns a single panel into a control point for several machines. You register each node through an add-server wizard that hands you a one-liner to run on the target; the node's vinza-agent enrolls, you confirm its key fingerprint, and from then on the panel routes work to it. The local machine is a node too, so there is no separate code path for single-server installs.

Once a node is enrolled the panel exposes most of what it does locally, per node: a file manager with search, read/write, upload, rename, move, copy, compress/extract, permission and ownership changes, a recycle bin, and downloads (a folder arrives as a .tar.gz); systemd service listing and control, unit-file editing and creation from templates; resource statistics, log tailing, process listing and kill, and open-port inspection; plus a remote shell and node reboot.

Provisioning works across nodes as well — create or remove a website or database on a specific node, issue SSL, set up a proxy, and manage Linux hosting users and MySQL/MariaDB users there. Web-server and database configuration have their own editors, and a website or database can be migrated from one node to another. Nodes can be tagged with roles (web, db, edge, cache, storage, generic), which feeds a placement suggestion when you create something new.

Security is handled per node: firewall status and rules, fail2ban jails with ban/unban, SSH hardening, and a WAF section covering mode, per-site exclusions, custom rules, allow entries and tuning. The plugin can also lay a WireGuard mesh between nodes for private inter-node traffic, apply a hardening profile, and push agent updates when a node's version lags the panel's.

Everything here is admin-only — there is no tenant-facing surface — and every remote operation depends on the agent being reachable on that node. Node roles and mesh state are kept in the plugin's own settings rather than core tables.

Availability: Included at no extra cost with every paid plan (Starter, Profesional and Enterprise). It is not sold separately and is not available on the Free plan.

Min Panel Version
1.3.60
Platform
Ubuntu 20.04+ / 22.04+ / 24.04+
License
Free — no key needed
Permissions
core.manage_plugins
VinzaPanel handles installation automatically via the Vinza Store. Make sure the panel agent has internet access to download dependencies.
1.0.24 — New icon in the shared flat style. 1.0.23 — Web server settings: on nginx, a directive nginx.conf already carries (the 50m upload default) is edited there instead of repeated in the drop-in, which nginx rejected as a duplicate. 1.0.22 — Switching node while a tab is loading no longer shows the previous node's data in the new one, and a config file, path or firewall state read from the old node can no longer be saved to the new one. Overview clears the tiles and chart instead of keeping the last node's figures when a read fails. A component install still running on a node shows its live log again when you come back to that node. The server list keeps its CPU/RAM bars between heartbeats. A node without MySQL/MariaDB or fail2ban says so instead of "Node unreachable" or a raw error, and an unreachable node is no longer shown as having no firewall. Auto-placement only suggests remote nodes that already run the needed web or database server, and asks all nodes at once. A log that does not exist on the node is explained. 1.0.21 — The node Overview tab has a History chart (CPU, memory, disk; 24h / 7d) from 5-minute averages the Servers heartbeat records while that page is open, kept 30 days and removed with the node. The Monitor tab shows CPU per core and disk read/write rates and IOPS on nodes with the updated agent. 1.0.20 — Node-offline and high disk/CPU/memory alerts also go to the admin's email, Telegram and webhook alert channels (panel 1.3.78+), still at most once per condition per 30 minutes. 1.0.19 — Enabling the firewall keeps the panel's own port (and mail and FTP on the node serving them) open; accepting the plan as offered could lock you out of the panel. Unhardening a node re-opens MySQL only if it was open before. A folder download respects the size limit again. Ports in the firewall plan show their process. Linux users on the panel host are matched to their panel accounts. A runtime install that died mid-way no longer blocks the next one. IPv6 clients in the WAF log are shown in full. Security: names shown in the page (from the server, its sites or its users) are passed to buttons safely; a quote in one could run script in the admin's browser. 1.0.18 — Free on every plan; the plan sets how many remote servers a panel may add (servers.max: Free 1, Starter 3, Pro 10, Enterprise unlimited). Add Server explains the limit instead of creating a row the licence does not cover; servers already enrolled keep working. 1.0.17 — Node users: password dialog, confirmations, panel accounts protected; SSL checks the node's DNS; safer database actions; restore with files/databases choice; core services protected; agent update and reboot report back; more components; Apps menu per node; chunked uploads/downloads; provider tab follows region. 1.0.16 — Add Server is a tabbed dialog: Remote (enrol an existing machine) and, when the Server Provider app is installed, Provider (create a VPS that enrols itself). 1.0.15 — A file or folder copied or moved to another node now belongs to the owner of the destination folder there (it kept the source node's owner, or a bare uid). 1.0.14 — Runtimes flags a Python whose venv module is missing ("no venv": its apps cannot build a virtualenv) and repairs it in one click. 1.0.13 — Runtimes for each node: PHP-FPM, Python and Node.js versions installed there — install or remove versions, restart PHP-FPM or make a PHP version the default, with the job log shown live. 1.0.12 — Backups for each node: the backups made on that node, "Back up now" for a website (files, or files and databases) or a database, Restore and Download — through the panel's own backup engine, so permissions and the queue are the same as on the Backups page. Nodes whose agent is older than 1.3.59 are told to update it. 1.0.11 — New Overview for each node: live CPU, memory, disk and load, node details and shortcuts. Every node pane opens the same way: a header with what the pane is for and its actions, a row of totals where it helps, filter chips and a search box. Components are cards; Security starts with an "X of 4 protections on" summary and one suggested fix, and each section tab shows On / Partial / Off; Services lists failed units first; Monitor shows CPU, memory, disk and load as tiles. 1.0.10 — New layout: a Servers column (status, role tags, live CPU/RAM) beside a grouped node menu, inside the panel's own sidebar. The panel sidebar folds to icons on this page unless you locked it; with it open, or on a narrow screen, the server list becomes a picker above the node menu, and on phones the menu is one swipeable row. Offline nodes are listed. 1.0.9 — The server list marks the node that runs the cluster's mail server ("mail server", linking to the Mail Server page), and that node cannot be removed until the mail server role has moved elsewhere. Needs panel 1.3.60. 1.0.8 — The enrol dialog explains that the command asks for confirmation and how to run it unattended (add YES=1 after the token). 1.0.7 — Components: a new FTP (vsftpd) component installs and configures the FTP/FTPS server on a node, so FTP Manager accounts for sites on that node can log in. 1.0.6 — The node heartbeat asks every node at once with a shorter timeout and checks the agent version every 10 minutes, so an offline node no longer holds the Vinza Server page for ~12 seconds per node. 1.0.5 — The enrolment one-liner and agent-update URLs built from the Server Identity FQDN now include the panel port (:2711 by default) instead of pointing at port 443. 1.0.4 — Install components no longer reports success when the node could not download setup.sh (self-signed panel certificate; the download error was swallowed by the pipe). Removing a server that still hosts accounts explains why instead of showing a raw database error. 1.0.3 — Databases → Users: an Edit access action changes a user's grant scope (all databases / one database) in place — host stays read-only as part of the identity, and a failed grant puts the previous grants back. Security → WAF: custom rules can be edited in place (prefilled with the rule text and label); the rule keeps its id and the change goes through the same config-test + rollback as adding one, so a rejected edit leaves the old rule active. 1.0.2 — Files: download a file (or a folder as .tar.gz) from any node, and a clickable breadcrumb replaces the dead, ellipsised path. Switching node now re-lists that node (the pane kept the previous node's folder, so the next action ran on the new node with the old path), and a remembered folder that is gone falls back to / instead of a dead-end error. A failed zip/extract names the cause (the node has no zip/unzip binary) instead of a bare "Compression failed". 1.0.1 — Configure → Rewrite now shows the Static tab's region of the rules file read-only underneath the editor, instead of opening blank on a file that isn't. 0.1.0 — Initial scaffold: server registry, add-server wizard with enrollment one-liner, local-node routing. Remote transport pending.

Use VinzaPanel's REST API to download and install this app programmatically.

Download app files
HTTP
POST /plugins/api/download/vinza-server/
Content-Type: application/json

{
  "panel_version": "1.0.0"
}
Example response
JSON
{
  "success": true,
  "plugin_id": "vinza-server",
  "version": "1.0.24",
  "download_url": "..."
}