Installation

One command on a clean server: the bootstrapper checks the machine and the key, downloads a signed build and installs the panel.

Requirements

The command

The activation key arrives by email after a purchase or a trial start, and it is also in your account. As root:

bash <(curl -fsSL https://getultrapanel.com/install.sh) --key UPL-XXXXX-XXXXX-XXXXX-XXXXX-XXXXX

Without --key the bootstrapper asks for it. Useful options:

OptionWhat it does
--domain panel.example.companel host name; the panel gets a Let's Encrypt certificate right away
--email [email protected]the first administrator login and certificate authority contact; asked for if missing
--zfs-disk /dev/sdba dedicated disk for account data. Without it a 24 GB sparse file pool is used — fine for a trial
--force-movethe key already runs on another server — move the license here
--version 1.2.0a specific version instead of the latest stable
--channel betarelease channel
-yno questions

What happens

  1. Machine check: OS, memory, disk, other panels.
  2. Key check: the check character locally, then a request to the license server. That request does not take the license: an interrupted install binds nothing.
  3. Release manifest: file list and SHA-256 sums signed with the release key. Its public half is built into the bootstrapper, so a tampered build is refused.
  4. Resumable download with every file verified.
  5. Install from the prebuilt bundle: no compiler or npm on the server. At the end the panel activates the key — from then on the license is bound to this server.

The first administrator credentials are printed at the end and saved to /root/.ultrapanel-first-admin. Without --domain the panel listens on port 9443.

Key and license on the server

ultrapanel-ctl license             # edition, term, last check-in
ultrapanel-ctl license set-key UPL-…  # change the key
ultrapanel-ctl license refresh     # contact the license server now
ultrapanel-ctl license release     # free the license before moving

The panel checks in every few hours and holds a signed lease for 14 days, so a short outage does not affect it.

Moving to another server

One key, one server. To install on a new machine, unbind the old one in your account (or run ultrapanel-ctl license release there), or install with --force-move. If the old server has been silent for more than three days, the license moves on its own. Up to three moves per 30 days.

Upgrades

ultrapanel-ctl upgrade

A new version arrives the same way as the first one: by key, with the signature checked. Sites keep running during the upgrade.

When the license expires

There is a grace week after the paid-until date. After that only management locks: no new accounts and no setting changes. Sites, mail, certificate renewals, backups and payments from your own customers keep working. Renewing in your account lifts the lock at the next check-in — or at once with the “Check now” button on the License screen.