Sponsored Content

Quickstart

Last updated

For brand-new hosts. Assumes Debian 13 (Trixie), root, public IPv4, and DNS pointed at the box.

1. Install

curl -fsSL https://get.jabali-panel.com | bash

The installer brings up MariaDB, PowerDNS (auth + recursor), PHP-FPM (all current Sury versions), Stalwart mail, CrowdSec, Kratos, and the Jabali panel itself. End-to-end takes 8–15 minutes on a fresh VPS.

Override the upstream resolver if :53/udp outbound is blocked at the lab firewall:

JABALI_DNS_FORWARDER=192.168.1.1 curl -fsSL https://get.jabali-panel.com | bash

2. First login

The installer prints an admin one-time URL at the end. Open it; you land in /jabali-admin/dashboard.

If you missed it, mint a Kratos recovery link for the admin account:

jabali user --link <admin-email>

Or set a new password directly:

jabali user password <admin-email>

The recovery flow requires auth.kratos.admin_url configured (default: the local jabali-kratos admin socket). The installer wires this up; keep the socket reachable on the host.

3. Set the panel hostname

Server Settings β†’ General β†’ Panel Hostname. Pick the FQDN you want for the panel itself (e.g. panel.example.com). The reconciler will issue a Let’s Encrypt cert for it within ≀60 seconds and reload nginx + jabali-panel + jabali-webmail.

4. Create your first hosted user

Users β†’ Create User. Pick a username, email, package (or β€œdefault”), and primary domain. The system creates:

  • A Linux account (login disabled, SFTP only).
  • A per-user PHP-FPM pool socket.
  • An nginx vhost for the primary domain.
  • A home directory under /home/<user> with quota.
  • Mail account + DKIM keys (if the domain runs mail).

5. Issue SSL for the domain

Domains β†’ Edit β†’ SSL β†’ toggle on. The reconciler does HTTP-01 over the existing port-80 vhost within ≀60 seconds.

6. Add a database (optional)

Databases β†’ Create. Pick MariaDB or PostgreSQL, set a DB user, get a password (shown once). Click β€œOpen phpMyAdmin” to SSO into the DB UI.

7. Install WordPress (optional)

Applications β†’ pick the domain β†’ WordPress β†’ Install. The wizard provisions the DB, downloads the latest WP, runs wp core install, and writes a single-use SSO drop-in (jabali-sso-<token>.php at the docroot, 60 s TTL, Installatron / Softaculous pattern) so the user one-clicks into /wp-admin/ from the panel.

You’re live.

Next