Features
Everything included in OPanel, grouped by area. No add-ons to buy, no feature tiers.
Clustering and scale
- Cluster of one
- A single server runs the same components as a large cluster, so growing never means migrating.
- Join in two commands
- Create a join token and run opanel join on the new server. The cluster CA is pinned before anything is trusted.
- Node roles
- Control, edge, SSH, web, database and cache roles, colocated or on separate servers.
- Pools
- Group web servers and database servers into pools, and let each plan choose where its sites live.
- Automatic placement
- New sites land on the web server with the most CPU, memory and disk headroom.
- Live site moves
- Resumable server-to-server transfers over mutual TLS, a cutover of seconds and a 24-hour rollback window.
- Drain and cordon
- Take a server out of rotation and move its sites away for maintenance, with no customer action.
- Rebalancer
- Scores every server every 15 minutes and proposes moves, or makes them automatically if you allow it.
- Shared certificates
- Every edge server serves the same certificates, so any edge can answer for any site.
Isolation
- A sandbox per site
- Its own Unix user, home, systemd sandbox and cgroup v2 slice for every site.
- Resource limits
- CPU, memory, processes, I/O weight, disk space and inodes per site, or pooled per subscription.
- Hidden neighbours
- Other homes, processes and system paths are invisible from inside a site.
- One sandbox for everything
- PHP, cron, SSH, SFTP, WP-CLI and file manager operations run under the same profile.
- No kernel patches
- Built only on stock Debian features: systemd, cgroup v2, namespaces, nftables and project quotas.
Performance and PHP
- Go edge proxy
- HTTP/1.1, HTTP/2, HTTP/3 and WebSockets, with no reloads when routes or certificates change.
- PHP 7.4 to 8.5
- Every branch side by side, chosen per site, with outdated branches flagged and optionally disabled.
- PHP-FPM and OPcache per site
- No shared pools and no shared caches between customers.
- PHP sleep
- Idle sites stop their PHP master and wake on the next request, so quiet sites use no PHP memory.
- php.ini settings
- Customers tune limits, uploads and errors within the ceilings of their plan.
- Valkey object cache
- A private Valkey instance per site, for WordPress and any PHP application.
- Zero-downtime upgrades
- The edge and the SSH gateway hand over their connections, so upgrades never cut an upload or a session.
Sites, domains and HTTPS
- WordPress, PHP or static sites
- Presets for WordPress, PHP front controllers, Laravel and static sites.
- Aliases and redirects
- Extra domains, redirects that keep the path, wildcards and a document root per domain.
- DNS checks and verification
- The panel shows the records to create and verifies ownership before a domain is served.
- Automatic HTTPS
- Let’s Encrypt with ZeroSSL as a fallback, issued on demand and renewed on its own.
- Custom certificates
- Upload your own certificate chain when a customer needs one.
- HSTS and redirects
- Redirect HTTP to HTTPS and enable HSTS per domain.
- Apache backend
- An optional Apache backend for applications that depend on .htaccess.
Security
- Web application firewall
- Coraza with the OWASP Core Rule Set: off, detect or block per domain, and fail-closed in block mode.
- Cluster-wide IP blocking
- Signals from panel and SSH logins, wp-login, xmlrpc, the WAF and floods, with escalating blocks on every server.
- Allowlist and CDN support
- Staff allowlists, private networks never blocked, and real client IPs behind CDNs and load balancers.
- Malware scanning
- Incremental scans every few hours and a full weekly scan, with optional ClamAV and YARA.
- Quarantine and restore
- Quarantine a file, mark a false positive or reinstall WordPress core, and owners are emailed.
- Strong sign-in
- Argon2id passwords, passkeys, TOTP, recovery codes and session management.
- Mutual TLS
- An internal certificate authority, 90-day certificates renewed automatically, revocation in seconds.
- Encrypted secrets
- Platform secrets are protected with AES-256-GCM envelope encryption.
- Audit log
- Every change by people, tokens and the platform, filterable by actor, action, subject and time.
WordPress
- One-click install
- Title, admin user, locale, database and table prefix, with a secure generated password.
- Migration over SSH
- Copy files and database from any host with SSH, using rsync and WP-CLI.
- Migration plugin
- A small, brand-neutral plugin that moves sites from hosts without SSH, over signed, resumable requests.
- Safe updates
- Snapshot, update, check pages and logs, and roll back automatically if something breaks.
- Update policies
- Choose what updates per plan or per site, on a schedule spread across your servers.
- Inventory
- Core, plugins, themes, must-use plugins and drop-ins for every site.
- Core integrity
- Checksums against WordPress.org and a one-click core reinstall.
Databases
- MariaDB 11.8
- Databases and users per site, with privileges per database and connection limits per plan.
- Database studio
- Browse tables and structure, edit rows, run SQL and import or export dumps in the browser.
- SSH tunnels
- Databases are never public. Customers connect their favourite client through the SSH gateway.
- Database pools
- Standalone or replicated database pools with orchestrated failover.
Backups
- Encrypted and incremental
- restic backups with one encrypted repository per site.
- Local or S3-compatible
- Amazon S3, Backblaze B2, Wasabi, MinIO, Ceph or a folder on every server.
- Plan policies
- Schedules, retention, databases included and how many manual backups customers may start.
- Self-service restores
- Restore a whole site, chosen paths or a database, into a new folder or over the live files.
- Trash
- Deleted sites and files are kept for 72 hours by default before they are removed.
Developer tools
- SSH and SFTP gateway
- One hostname for the cluster, keys that belong to people and every session audited.
- Web terminal
- A shell in the browser inside the site’s sandbox.
- File manager
- Uploads with progress, permissions, and a code editor with syntax highlighting.
- Cron jobs
- Scheduled commands in the site sandbox, with timeouts and a minimum interval per plan.
- Staging sites
- Clone a site to staging, test changes and push them live.
- Git deploys
- Deploy from a Git repository, and import static sites from Git or an archive.
- Command palette
- Ctrl+K or ⌘K to find any site, customer or action.
Billing
- Stripe Checkout
- Signup, card capture, trials, promotion codes and Stripe Tax, with no card data on your servers.
- Automatic lifecycle
- Dunning, a grace period, suspension and termination, with data retained before removal.
- Billing portal
- Customers update cards, download invoices and change plans on their own.
- External billing
- WHMCS, Blesta and HostBill modules, or any billing system through the API.
- Plans
- Limits, features, allowed PHP versions, backup policies and prices per currency.
Resellers and teams
- Reseller brands
- Own panel and SSH hostnames, name, colors, logos, emails and maintenance pages.
- Brand staff
- Admin and support roles per brand, with limits on customers and sites set by the platform.
- Stripe per brand
- Each brand can collect payments in its own Stripe account.
- Teams
- Owner, admin, developer, billing and viewer roles, optionally limited to specific sites.
- One login, many customers
- Agencies switch between clients without extra accounts.
Operations
- One-command install
- opanel install sets up a complete server, and running it again repairs it.
- opanel doctor
- Checks services, certificates, quotas, firewall, clock and disk, with JSON output for monitoring.
- Signed APT repository
- Stable, beta and nightly channels, reproducible builds and an SBOM per release.
- Rolling upgrades
- Upgrades roll through the cluster one server at a time behind health checks.
- Unattended security updates
- Debian and PHP security updates install on their own.
- Migrations
- Import cPanel and Plesk accounts, WordPress sites and static sites.
- REST API
- Over 240 operations in OpenAPI 3.1, scoped tokens, idempotency keys and interactive docs.
Your first server is one command away
#
opanel install --panel-hostname panel.example.com --acme-email ops@example.com