Everything in the box. Status included.

89 capabilities in 13 areas. 57 of them run today and passed a drill on real infrastructure; the rest are labelled with when they arrive.

LIVE works today, proven by a drill on our demo server
GA ships with v1.0 (general availability)
ROADMAP after GA, with the planned version

Proven in public

Every LIVE badge rests on a drill: a scripted run against our demo server that tries to break the feature and records what happened. These are the latest runs. The full transcripts go public with the beta.

60 PASS · 0 FAIL · 266 s · 2026-09-29

Container isolation

Per-account containers, networks and volumes under load and attack: OOM, fork bomb, disk fill, cross-account connections, reboot.

Memory hog
killed inside its account (rc 137)
Fork bomb
stopped at the account's 512-process limit
Disk fill
stopped at the account quota (ENOSPC)
Reboot
workloads serving again in 36 s, no job
SELinux
0 denials

demo server, PlusPanel OS, SELinux enforcing

81 PASS · 0 FAIL · 487 s · 2026-09-30

WordPress stack

Deploy, snapshot, deliberate breakage, rollback, a second account's access attempts, full quota, reboot.

Deploy, API call → live
30.4 s cold · 21.8 s warm
Snapshot (113 MB site)
6.7 s
Rollback
8.8 s, files + database restored
Another account's connections
refused on 6 of 6 targets
Reboot → sites serving
42 s

demo server, XFS pool, SELinux enforcing

11 PASS · 0 FAIL · — · 2026-09-29

Atomic OS update and rollback

A signed PlusPanel OS image applied, rolled back and re-applied; unsigned and revoked access refused.

Apply
44 s
Rollback
28 s
Re-apply
38 s
Unsigned image
refused

demo server, 10.1.0-rc.1 → 10.1.0

44 PASS · 0 FAIL · — · 2026-10-06

Automatic TLS

Issuance, renewal, imports, failures and policy changes on real sites, including one production Let's Encrypt certificate.

Production certificate
issued & installed in 62 s
HTTP → HTTPS
301 for covered names
Private key on import
never stored by the platform

demo server, PlusPanel OS 10.3.5

24 PASS · 0 FAIL · 134 s · 2026-10-10

Authoritative DNS

Two nameservers fed by the control plane: propagation, one nameserver down, DNSSEC, wildcard certificate via DNS-01, reboot.

Record change on both nameservers
0.54–0.60 s
One nameserver down → back in sync
6.2 s
DNSSEC
validated from the published DS
Both nameservers rebooted → answering
31 s

two nameservers in two data centers

64 PASS · 0 FAIL · 695 s · 2026-10-11

Databases per account

MariaDB and PostgreSQL per account, bound into a site, phpMyAdmin one-time login, version upgrade, idle parking and wake, dumps at a full quota, another account's access attempts, reboot.

MariaDB ready
34.6 s
phpMyAdmin one-time link
4.6 s, expires in 5 min
Upgrade 11.8 → 12.3
45.2 s
Parked database woken
before the site served
Site reads its database after a reboot
66.8 s

demo server, PlusPanel OS 10.4.3

88 PASS · 0 FAIL · 1028 s · 2026-10-11

Files, SFTP and web terminal

File manager as the account's user, path-traversal, symlink and archive-bomb attacks, SFTP from the internet, a second account's access attempts, the web terminal, reboot.

SFTP enabled
7.7 s
SFTP login + upload
1.4 s
Terminal to a prompt
3.9 s
Archive bomb (1000:1)
refused, nothing written
Another account's files over SFTP
not found

demo server, PlusPanel OS 10.5.1

40 PASS · 0 FAIL · 15 s · 2026-10-12

Editions and licensing

Edition limits enforced by the platform; signed licences checked in, expired, in grace and revoked, evaluated by the deployed control plane.

Licence server unreachable
nothing stops
Licence expired
14 days of grace, then Free
Licence revoked
Free at once

staging control plane

57 PASS · 0 FAIL · 1 SKIP · 519 s · 2026-10-14

Backups and restore

Encrypted incremental backups of a WordPress account, a deleted account restored, single files and a database restored, a WordPress update rolled back, an automatic restore test, an interrupted backup resumed.

Incremental after a 2 MiB change
2.03 MiB uploaded, 3.6 s
Deleted account restored
97.9 s, data identical
WordPress update rolled back
21.1 s
Automatic restore test
passed in 108.1 s
Restore onto a second server
skipped: no second server

demo server, PlusPanel OS 10.7.0-rc.2 (Preview channel)

steps 1–7 · all PASS · — · 2026-10-11

Plans, resellers and clients

A plan's limits on a real server, an upgrade, a reseller over its allowance, a client's scope, invitations, impersonation, a per-account override, the login on a hoster's own domain.

Write past a 1 GiB plan
stopped by the kernel (ENOSPC)
Second site on a one-site plan
refused
Reseller over its allowance
refused
Invitation used twice
refused the second time
Action while impersonating
audited with both people

staging control plane and the demo server

22 PASS · 0 FAIL · 105 s · 2026-10-12

White-label client panel

A hoster's own name, colors, logo and wording, the login on its own domain, and a client launching WordPress and a database from its branded panel.

Login on the hoster's domain
organization found from the address
Low-contrast brand color
refused (WCAG 4.5:1)
SVG logo
refused

staging control plane and the demo server

76 PASS · 0 FAIL · — · 2026-10-14

In-place conversion to PlusPanel OS

AlmaLinux 9, AlmaLinux 10 with live sites, Rocky Linux 9 and a real Hetzner Cloud server converted in place; forced failures rolled back to the original system.

Convert → panel shows PlusPanel OS
75–243 s
Sites down during conversion
under 89 s
Failed check → old system back
135–263 s

lab VMs and a Hetzner Cloud server, PlusPanel OS 10.6.0

64 PASS · 0 FAIL · 305 s · 2026-10-15

Security center

A site's WAF in detect-only, then blocking, then a rule excluded; a country refused by a site rule and by a server rule; SFTP brute force banned and lifted from the panel; 2FA, a passkey and a recovery code in a real browser; 1000 audit events, a row changed directly in the database, the write-once anchor, the exports.

SQL injection, detect → block
served and logged → 403
Country rule on the server
443 refused, port 80 left for Let's Encrypt
5 wrong SFTP passwords
banned in 15.6 s, lifted in 0.4 s
Audit row changed in the database
detected and alerted
Delete of the signed anchor
refused (write-once until 2033)

staging control plane and the demo server, PlusPanel OS 10.9.0-rc.1 (Preview channel)

79 PASS · 0 FAIL · 1121 s · 2026-10-16

Monitoring and alerts

A disk filled and released, a container stopped and restarted, a marker searched in a site's access log, central storage switched on and off, another organization's access attempts, e-mail and signed-webhook notifications, the agent killed right after a reboot, and the audit log's IP addresses truncated after 90 simulated days.

Disk past its warning level
alert in 298.9 s, “full in 0.5 days”
Stopped container
alert in 178.4 s, resolved 31.4 s after the restart
Marker in a site's access log
found in 5.6 s
Central storage switched off
raw logs and metrics purged, log line gone in 1.8 s
Agent killed after a reboot
critical alert in 16.0 s, with its journal

staging control plane and the demo server, PlusPanel OS 10.10.0-rc.2

40 PASS · 2 FAIL · 1792 s · 2026-10-19

Fleet updates in rollout rings

Six factory servers and the demo server updated ring by ring (internal, canary, 10, 50, 100 %); a release sabotaged on one server after its update, that server rolled back by itself and the rollout halted until resumed; a server outside its maintenance window waiting for it; an agent update across the fleet without a reboot; the 7-day cleanup; an express rollout.

Release through five rings
1792 s, every check green
Site broken after an update
rolled back in 90 s, rollout halted
Server outside its window
updated at its next opening
Agent update across the fleet
no reboot, sites answered throughout
Cleanup after 7 days
previous version kept for rollback

srv1 factory servers, staging control plane and the demo server, PlusPanel OS 10.11.2 and agent 1.1.4

Architecture & security

The structural differences: where the panel runs, how it talks to your servers, who can reach them.

The Jobs page: every operation on a server is a typed job with its status, attempts and the agent's signed result.
  • A fleet platform, not a panel on a server

    A control plane in our EU cloud plus a minimal agent on your servers. One server or a hundred, managed from the same place.

    LIVE
  • Zero inbound management ports

    The agent opens every connection outbound (gRPC over mTLS, inside WireGuard). Your server listens on nothing for management: no :2087, no :8443, SSH optional.

    LIVE
  • Typed, signed commands

    No remote shell. Every operation is an Ed25519-signed job with an addressee, an expiry and replay protection, verified by the agent before it runs.

    LIVE
  • Cryptographic identity per server

    mTLS with an internal CA, one certificate per server, automatic rotation, instant revocation.

    LIVE
  • WireGuard mesh

    A private network between agents and the platform. Management traffic never crosses the public internet in the clear.

    LIVE
  • Servers keep running on their own

    If the platform is unreachable, sites, mail and databases keep running: systemd owns them locally.

    LIVE
  • Your data and servers stay in the EU

    The control plane, image registry, nameservers and backups run on Hetzner in Germany and Finland. Every supplier and its role is listed on the privacy page.

    LIVE
  • Tamper-evident audit log

    Every action recorded in one hash-chained log the panel's own database account cannot rewrite. A daily signed anchor goes to write-once storage for seven years, a change made directly in the database is detected and alerted, and each organization can export its log (CSV/JSON) or a bundle that can be verified offline. IP addresses in it are cut to their network after 90 days, and the chain still verifies.

    LIVE

PlusPanel OS

The operating system you stop administering. It ships as a signed image and updates atomically.

  • Immutable OS, shipped as a signed image

    Derived from AlmaLinux (bootc). Every server in the fleet runs the same image, bit for bit. No drift.

    LIVE
  • Atomic updates with rollback

    An update is a reboot into the new image; a failure boots the previous one. Measured: apply 44 s, rollback 28 s.

    LIVE
  • OS maintenance is our job

    From an upstream CVE to a patched fleet: rebuild, Trivy scan, SBOM, cosign signature, rollout.

    LIVEGApipeline live · full CVE automation at GA
  • Release channels

    Stable · Production (default) and Preview · Early Access, chosen per server.

    LIVE
  • Rollout in waves with health gates

    Internal → canary 2% → 10/50/100%. A server that fails its checks rolls back by itself and the rollout stops before it reaches your production. Agent updates need no reboot.

    LIVE
  • Maintenance windows

    You choose when updates happen, per organization or per server; your clients are told beforehand. Critical security fixes get an express lane with the same checks.

    LIVE
  • Three ways to install

    Native image (ISO/qcow2/AMI) · in-place conversion of an existing AlmaLinux 9/10 or Rocky Linux 9, which rolls back to the old system by itself if the new one fails its checks · compatibility mode (agent only, on Alma/Rocky).

    LIVEGAconversion & compatibility live · native images at GA
  • Runs wherever KVM or bare metal runs

    Dedicated servers, KVM VPSes, cloud instances. x86_64 at GA; ARM64 later.

    LIVEROADMAP · v1.5x86_64 live · ARM64 in v1.5

Site hosting & isolation

Each customer account in its own box: containers, network, disk and kernel limits that are enforced, not advisory.

Switching a site's PHP version: the panel takes a snapshot first and switches back automatically if the health check fails.
Editing a site's domains: the primary domain and its aliases, routed by the server's ingress.
  • Every account in its own containers

    Rootless Podman with user namespaces: an account's processes do not exist for the rest of the server.

    LIVE
  • Dedicated network per account

    Accounts cannot reach each other: in the drill, another account's connections were refused on 6 of 6 targets. Egress is filtered.

    LIVE
  • Disk quotas enforced by the kernel

    XFS project quotas: the limit is a limit (EDQUOT/ENOSPC), with separate quotas for bytes and inodes.

    LIVE
  • SELinux MCS per account

    Multi-Category labels put one more wall between accounts, even after a container escape.

    LIVE
  • CPU, memory and process limits per account

    One account's OOM does not touch its neighbours; a fork bomb stops inside the account.

    LIVE
  • Web servers per site

    OpenLiteSpeed (default for WordPress/PHP, LSCache included) · Apache for .htaccess compatibility · nginx.

    LIVEGAOpenLiteSpeed & nginx live · Apache at GA
  • Multi-PHP

    PHP 8.2–8.5 per site (8.1 marked end-of-life), switched from the panel. A snapshot is taken first and a failed switch rolls back.

    LIVE
  • Node.js and Python apps

    Deploy from the panel, inside the same isolated containers.

    GA
  • Web terminal per account

    A terminal in the browser that opens inside the account's own containers, as the account's user, never on the host. Two sessions per account, closed after 15 minutes idle.

    LIVE
  • Cron per account

    Scheduled tasks that run inside the account's containers.

    GA

WordPress — PerformanceShield

Performance and safety for WordPress: every risky change has a snapshot behind it.

The Launch a WordPress site dialog while WordPress is being installed in the account's container.
  • One-click install with plugin sets

    WordPress plus your predefined plugin and theme sets, per hoster and white-labelled. Measured: 30.4 s from API call to live.

    LIVE
  • LSCache preconfigured

    Full-page cache from the first second on the OpenLiteSpeed stack.

    LIVE
  • Snapshots and one-click rollback

    Files and database, atomic. Measured on a 113 MB site: snapshot 6.7 s, rollback 8.8 s.

    LIVE
  • Automatic snapshot before every update

    Taken before any core, plugin or theme update from the panel, with a one-click rollback. Measured: an update rolled back in 21.1 s.

    LIVE
  • Auto-updates with a safety net

    Policies per site or plan (minor / all / none), a health check after the update and automatic rollback on failure.

    GA
  • Smart Updates

    The update runs first on an ephemeral clone with a visual before/after comparison, and is applied only if nothing breaks.

    GA
  • Clone & staging with sync back

    Fully isolated staging, its own database included; sync everything, files only, or chosen tables, with a safety snapshot.

    GA
  • Single sign-on into wp-admin

    Log in from the panel without a password.

    GA
  • Hardening

    Read-only filesystem except uploads, wp-config outside the webroot, limited egress.

    GA
  • Vulnerability & malware scanning

    Installed versions checked against vulnerability databases, plus malware scans; alerts with a fix button.

    GA
  • Fleet-wide management

    Update one plugin on 400 sites across every server, with a snapshot each, in waves, stopping on failures.

    GA

Email, with deliverability as a service

Port 25 problems become ours: mail leaves through managed relay pools, not your server's IP.

Planned for GA: mail leaves your server through the WireGuard tunnel to the PlusPanel relay, which sends it from managed IP pools to the recipient's inbox, signed with DKIM, SPF and DMARC.your serverport 25 blocked? fineWireGuardPlusPanel relaypool · transactionalpool · shared goodpool · warmingscoredinboxDKIM · SPF · DMARC per domain · blacklist monitoring
  • Modern mail server per server

    Stalwart (IMAP/SMTP/JMAP), multi-tenant; unlimited mailboxes on Pro.

    GA
  • Modern webmail

    Bulwark (JMAP, instant sync) by default; SnappyMail as an alternative.

    GA
  • Central relay with managed IPs

    Mail leaves through IP pools segmented by reputation, with warming, blacklist monitoring and scoring.

    GA
  • Works where port 25 is blocked

    Sending goes through the WireGuard tunnel to the relay, so a cloud provider's port 25 block stops mattering.

    GA
  • DKIM, SPF and DMARC set up automatically

    Correct from day one, per domain.

    GA
  • Google Workspace / Microsoft 365

    For customers who keep their mail there.

    GA

Domains, DNS & SSL

Our own authoritative DNS and automatic certificates, from the same control plane.

A DNS zone in the panel: delegation to ns1/ns2.pluspanel.net, both nameservers in sync, and its records.
A WordPress site card: domains, PHP 8.5, live routing and a valid Let's Encrypt certificate served over HTTPS.
  • Managed authoritative DNS

    PowerDNS on two nameservers in two data centers, fed by the control plane; zone templates; DNSSEC. A record change reaches both in under a second.

    LIVE
  • Automatic SSL

    Let's Encrypt issuance and renewal, HTTP → HTTPS redirects, import of your own certificates. Measured: 62 s to a production certificate.

    LIVE
  • Wildcard certificates via DNS-01

    Issued by the control plane against our own DNS and delivered to the server as a signed job.

    LIVEdrilled against Let's Encrypt staging
  • Cloudflare integration

    Use Cloudflare for DNS and proxying from the panel; analytics and page rules later.

    GAROADMAP · v1.3basic at GA · deep in v1.3
  • Anycast DNS on our own network

    Our own /24 announced over BGP from several locations.

    ROADMAP · v2.0

Databases & files

Your database in your container, not a MySQL shared by 400 customers.

  • A dedicated database server per account

    MariaDB 11.4, 11.8 or 12.3, PostgreSQL 17 or 18, and a Valkey cache (open source, Redis-compatible), each in the account's own container. Sites get their connection details without anyone copying a password. Measured: MariaDB ready in 34.6 s.

    LIVE
  • phpMyAdmin with single sign-on

    Opened straight from the panel with a one-time link that expires in 5 minutes, over HTTPS only; every session is audited. For MariaDB; a web tool for PostgreSQL comes later.

    LIVE
  • Version upgrades with automatic rollback

    A snapshot first, then the upgrade; a failed upgrade puts the previous version back. Downgrades are refused. Measured: MariaDB 11.8 → 12.3 in 45.2 s.

    LIVE
  • Idle parking

    Databases of sites without traffic for 24 hours free their memory and wake before the site serves its first request.

    LIVE
  • Web file manager

    Browse, edit, upload and extract archives, running as the account's own user; paths outside the account, symlink escapes and archive bombs are refused.

    LIVE
  • SFTP, opt-in

    Off by default, enabled per server. SFTP only, no shell and no FTP; password shown once, or SSH keys.

    LIVE

Backup & restore

A backup nobody has restored is not a backup.

  • Incremental, deduplicated, encrypted

    Encrypted on your server before it leaves (XChaCha20-Poly1305): the storage provider only ever sees encrypted data. Measured: after a 2 MiB change, the next backup uploaded 2.03 MiB.

    LIVE
  • Granular restore

    A file or folder, one database, a site or a whole account; in place behind a safety snapshot, to a separate folder, or as a download. A deleted account can be brought back for 30 days.

    LIVE
  • Automatic restore tests

    The platform restores a backup into a sandbox and checks files, database and HTTP: monthly on Pro and Enterprise, every three months on Free.

    LIVE
  • Retention by edition

    Free keeps 7 daily backups; Pro and Enterprise keep 14 daily, 8 weekly and 6 monthly. When storage runs short, the oldest are thinned and backups keep running.

    LIVE
  • Three storage tiers

    Standard (EU) · Premium geo-redundant (two providers) · Bring-your-own S3 (Enterprise).

    GA
  • WordPress snapshot & rollback

    Built into PerformanceShield (see WordPress).

    LIVE

Migration Center

Leaving cPanel, free of charge.

  • Live migration from cPanel/WHM

    Accounts, sites, databases, email (password hashes kept, so users notice nothing), DNS.

    GA
  • Import from backups

    cPanel archives, without access to the source server.

    GA
  • Pre-flight report

    What moves and what needs attention, before anything is touched.

    GA
  • Cutover without drama

    TTL lowered automatically, final delta sync, automatic post-migration checks.

    GA
  • .htaccess handled correctly

    Migrated onto identical Apache, or translated for OpenLiteSpeed.

    GA
  • Free and unlimited

    In every edition, Free included. Fleet mode (bulk migrations) in v1.2.

    GAROADMAP · v1.2fleet mode in v1.2

Operational security

Included, not sold as add-ons.

  • WAF per site

    Coraza with the OWASP Core Rule Set in each server's web proxy. New sites start detect-only; switch a site or a whole account to blocking, exclude a rule from the panel, and your customers see the WAF log of their own sites. Security headers (HSTS, optional CSP) per site.

    LIVE
  • Firewall UI + country blocking

    See what each server really exposes and confirm that no management port is open; IP allow/deny rules per server; country rules per server or per site (IP Geolocation by DB-IP); brute-force bans on SFTP that you can see and lift.

    LIVE
  • Bandwidth limits per account (eBPF)

    One account cannot saturate your uplink.

    GA
  • 2FA & passkeys

    Authenticator-app codes, passkeys (also on your white-label domain) and recovery codes for every panel user, required for all users or only admins per organization; sessions you can list and sign out; e-mail on a new device.

    LIVE
  • Automatic security updates

    From CVE to patched fleet without you (see PlusPanel OS).

    LIVEGApipeline live · complete at GA

Monitoring & observability

Local-first: raw metrics and logs stay on your server unless you opt in.

  • Metrics & logs per server, account and site

    Read from the server itself, with a log explorer for access, error and system logs. Central storage in the EU (VictoriaMetrics and VictoriaLogs, a separate store per organization) only if you opt in; opting out purges the raw data, and another organization gets nothing.

    LIVE
  • Dashboards in the panel

    Fleet, server, account and site health, without installing Grafana.

    LIVE
  • Alerting

    Built-in rules with your own thresholds: a disk filling up (with when it will be full), a stopped container, an agent that exits right after a boot (its journal attached), and more. Notifications by e-mail and signed webhook; acknowledge with a comment.

    LIVEGAe-mail + webhook live · app push at GA
  • Public status page

    Our own platform in public at status.pluspanel.net: control plane, server mesh, mail relay, DNS and registry, updated every 30 seconds, with incidents opened and closed by the probes. Also as JSON.

    LIVE
  • Live activity stream

    Every job with real-time progress in the UI.

    LIVEGAbasic live · complete at GA

Interface, white-label & mobile

One application for admins, resellers and end customers.

  • One app, three facets

    Admin / Reseller / Client through roles, not three products to learn. Clients see their own hosting: plan limits against use, sites, databases and files.

    LIVEGAall three facets live · redesigned screens at GA
  • Task-centric

    Wizards for the common jobs ("Launch a site"), object pages for experts, a command palette (Ctrl+K).

    GA
  • Real white-label

    Your product name, logo, colors and wording in Romanian, English and Spanish, with the login on your own domain and its certificate issued automatically.

    LIVE
  • Dark mode & languages

    From day one; Romanian, English and Spanish translated by people.

    LIVE
  • Responsive & installable

    The whole panel on a phone; installable as an app with push at GA.

    LIVEGAresponsive live · PWA at GA
  • Native "monitor & act" app

    Plus an approval device: confirm sensitive operations biometrically from your phone.

    ROADMAP · v1.5
  • PlusPanel Assistant

    Read-only AI: answers from the docs and diagnostics from your own telemetry.

    ROADMAP · v1.1

Accounts, resellers & business

For hosting companies: the hierarchy, the billing and the integrations.

  • Full hierarchy

    Admin → Reseller → Client, with hosting plans (disk, inodes, CPU, memory, sites, databases, PHP versions), reseller allowances, one-time invitations and audited impersonation.

    LIVEROADMAP · v1.2hierarchy live · complete reseller tier in v1.2
  • WHMCS integration

    Provisioning from the billing system you already run.

    GA
  • Native billing

    Invoice your customers from the panel; Romanian e-Factura and EU VAT/OSS.

    ROADMAP · v1.4
  • Payment, invoicing and registrar connectors

    Stripe, PayPal, Netopia, EuPlătesc · e-Factura/SPV, Oblio, SmartBill, FGO · ROTLD, Enom, ResellerClub, Namecheap — enabled from a catalog with your own credentials.

    ROADMAP · v1.4
  • Public API & CLI

    Full OpenAPI plus pluspanel-cli: everything the UI does can be automated.

    GA
  • Fail-open licensing

    Licences are signed and checked daily; a licence server outage never stops your servers, and an expired licence keeps working for 14 days of grace.

    LIVE

Lock €9/month before your next cPanel invoice arrives.

No spam. One email when founding opens, one at GA.