Offsite backup server

Register a separate VPS, setup, Backup all, scheduling, restore and archive download from the panel.

  1. Copy strategy

    Panel and DNS: local backup on the panel + copy to offsite server. Mail: offsite only (no local copy on the panel). Projects: local on the panel; copy to VPS via Backup all or scheduled offsite backup. Without an active backup server everything works as before — local schedule stays in Settings → Backup.

  2. Register and prepare

    Sidebar → Backup servers → Register server. Enter SSH credentials for a fresh Ubuntu 24.04 VM (root access). On the server page: (1) Run preflight — SSH, disk, Ubuntu; (2) Prepare server — creates directories, UFW (SSH only from panel IP), fail2ban and queue service; (3) Set as active for Backup all.

    Minimum backup VPS:
      OS:   Ubuntu 24.04 LTS
      Disk: dovoljno za panel + DNS + mail + projekte
      SSH:  root (PermitRootLogin not blocked)
  3. Backup all and scheduling

    Backup servers → Overview → Backup all sends panel snapshot, DNS archive, mail archive and project copies to the active server. In the Settings tab enable scheduled offsite backup (separate from local schedule) — same flow as Backup all at chosen times. Requires Laravel scheduler (cron).

  4. Multiple panels and retention

    Each uAdmin panel has its own panel_instance_id — copies from multiple panels on the same backup VPS do not mix. In offsite backup settings set file retention (projects, DNS, mail) and the number of panel snapshot sets. Old copies are automatically removed from the offsite server.

  5. Restore, download and delete

    The Copies tab shows offsite sets by category (panel, projects, DNS, mail). Restore downloads the copy from the VPS and runs the existing restore flow. Download fetches the archive to your computer. Local backups on the panel remain untouched.

    Tip

    Panel snapshot restore: archive is downloaded locally — use OTA rollback for DB restore. Mail restore requires an active mail server with SSH access.