Offsite backups & monitoring
Push backups to S3/B2/SFTP, read the Health Score, and get alerted before things break.
NovaPanel 1.4.0 adds three things that make a server you can trust: backups that live somewhere other than the server itself, a single Health Score that tells you if everything's OK at a glance, and resource alerts that warn you before a disk fills up.
Offsite backups
Local backups protect against a bad deploy; they don't protect against the server dying. Offsite backups copy every backup — admin, customer, and scheduled — to remote storage right after the local archive is written. If a local copy has already been pruned by your retention policy, restores transparently pull the archive back from the remote first.
Offsite backups are a Pro feature. Configure under admin → Backup Manager → Offsite Destination:
S3 / Backblaze B2 / Wasabi / MinIO
One form covers every S3-compatible provider. Pick S3 / B2 / Wasabi and fill in:
- Bucket and Region (e.g.
us-east-1). - Endpoint — leave blank for AWS. For Backblaze B2 use its S3 endpoint, e.g.
https://s3.us-west-000.backblazeb2.com; Wasabi/MinIO similar. - Access Key + Secret Key — an application key scoped to that one bucket is best practice.
- Path prefix (optional) — a folder inside the bucket, e.g.
novapanel/.
SFTP
For your own backup box: host, port (22), username, password, and a base path like /backups/novapanel.
Hit Test connection before saving — it verifies the bucket/host is reachable and writable so you find a typo now, not when a backup silently fails at 3am. Uploads use multipart, so backups larger than 5 GB are fine.
Security notes. Destination credentials are stored in the panel's database (root-owned, single-tenant) the same way the SMTP relay password is — encryption-at-rest is a planned follow-up. SFTP currently trusts the destination's host key on first use; pin it at the network level if that matters to you.
Health Score
The admin Dashboard shows a single 0–100 Server Health score with a per-signal breakdown. It's computed from things the panel already tracks:
- Disk and memory usage
- Core services up (Caddy, PostgreSQL, the panel itself…)
- SSL coverage — how many of your domains actually have a certificate
- Scheduled backups on, and whether offsite is configured
- A panel update waiting
Healthy (85+) means everything's green; Needs attention (60–84) and Critical (<60) tell you to look at the red/amber signals in the breakdown. The Health Score is available on every tier.
Resource alerts
The hourly watchdog warns when disk, memory, or CPU crosses a threshold — both as an in-panel notification and as a new server.alert outbound webhook, so you can pipe it into Slack, Discord, or PagerDuty (see Outbound webhooks).
Every tier alerts at sensible defaults (disk 85%, memory/CPU 90%). On Pro, tune the thresholds under admin → Settings → Alert Thresholds (set a value to 0 to disable that check).
Next steps
- Restore a backup — including from an offsite copy.
- Outbound webhooks — wire
server.alertinto your chat/on-call.