Die Dokumentation ist auf Englisch und Russisch verfügbar. Dies ist die englische Fassung.

Introduction

WardPane is a free, open source hosting panel for your own Ubuntu 24.04 server. It hosts static, PHP and Node.js sites, issues Let’s Encrypt certificates by itself, and filters traffic inside the web server before a request reaches your site. The license is AGPL-3.0, and there are no paid tiers.

Until version 2.0 the panel was called Small Web Panel. Everything you read here applies to WardPane 2.0.

Who it is for

If you have never set up a server, WardPane is meant to be your first panel. It installs with one command and the defaults are safe. Certificates are issued without your help, every PHP and Node.js site runs in its own sandbox, new sites start with protection turned on, and the panel itself runs without root. Settings come with short hints. When something breaks, the dashboard and the site status show what is wrong and why. A setup wizard, Simple and Expert modes and protection presets are planned for 2.3 (see the roadmap).

Administrators who have run servers for years will find every option in place: per-site rules applied in a known order, .htaccess with mod_rewrite, one PM2 daemon per owner, a terminal in the browser, the Cloudflare API, and export and import of every site as JSON. Every release is published with its SHA-256 checksum, and the source code is open. A per-site config file in an nginx-like syntax is planned for 2.1.

How it works

WardPane is a Node.js application that acts as the web server. It listens on ports 80 and 443 for your sites and on port 1500 for the panel. Static files are served directly. PHP runs in a php-fpm pool per site, and Node.js apps run under PM2, each as its own Linux user inside a systemd sandbox.

The panel process has no root rights. Changes that need root (users, folders, units) go to a small root helper started by systemd, which checks every value again before applying it.

Protection checks (blocklists, rate limits, bot filtering, geo rules, link-only access, passwords) run in a fixed order before your code sees the request. How protection works shows that order.

How to read these docs

If you are new to servers, read Getting started from top to bottom. If you already know what you are looking for, the reference pages list defaults, file paths and commands.