






















ZeroByte is a modern backup automation platform for self-hosters built on top of Restic. It provides a web-based interface for managing backups with support for multiple protocols and storage backends. ZeroByte offers automated backups with flexible scheduling, allowing you to set up custom backup frequencies and times. All backups are protected with end-to-end encryption through Restic, ensuring your data remains secure both in transit and at rest. The platform's multi-protocol support makes it versatile for various network environments and storage setups.

ZeroByte supports a wide variety of volume types (the data you want to back up):
For repositories (where backups are stored), ZeroByte supports:
The platform includes retention policies for efficient storage management, helping you maintain the right balance between backup history and storage usage. ZeroByte's web-based restore functionality makes it easy to recover files and directories from any backup snapshot directly through the interface. Built-in health checks and monitoring capabilities help ensure your backups are running smoothly and alert you to any issues.
Note: ZeroByte is currently in active development. While it's already quite functional, there may be significant changes between versions. Until there's a stable release, it's recommended to use ZeroByte as part of a multi-tier backup strategy rather than your sole backup solution.
ZeroByte runs as a Docker container, making installation straightforward. If you don't already have Docker installed, you can install it with the following commands:
Add your user to the docker group.
Once Docker is installed, create a file with the following configuration:
Note: If you encounter issues mounting shares, you may need to uncomment the line in the configuration above. This is not mentioned in the official ZeroByte documentation and may work fine for you without it. This may be addressed in a future version.
Key configuration points:

Start ZeroByte with:
Once the container is running, access the web interface at .
Volumes represent the source data you want to back up. To add a volume:
For local directories, you'll need to mount them into the ZeroByte container first by adding a volume mapping in your , then select "Directory" as the volume type in the web interface.

You can test connections, view storage usage, run health checks, and browse files directly from the ZeroByte interface.
Repositories are where your encrypted backups will be stored. To create a repository:

Repositories leverage Restic's deduplication and encryption features for efficient, secure storage.
Once you have volumes and repositories configured, you can create backup jobs:
Backup jobs will run automatically according to your schedule. You can also trigger manual backups using the "Backup Now" button.
To restore data from a backup:
ZeroByte makes it easy to restore individual files or entire directories from any snapshot.
In this section, we'll set up a REST server on a VPS to serve as an offsite backup destination. ZeroByte running on your local server will connect to this REST server to store backups. We'll establish the secure connection between your local server and the VPS using NetBird in the steps that follow. Note that this is just one example of how you could use NetBird with ZeroByte, and there are many other network configurations and backup strategies you could implement.
Download the latest release from GitHub on your offsite server:
Create the backup directory:
Replace with your own username in all paths and configuration files.
Use this only on trusted networks or when access is controlled by other means (VPN, firewall, NetBird, etc.).

Create the systemd service at :
Enable and start:
Connect from client:
Use this option for any network where you want an additional layer of security.
Install htpasswd utility:
Create credentials file in the backup directory:
To add additional users (omit flag):
Update the systemd service (remove ):
Reload and restart:
Connect from client with credentials:
To avoid passwords in shell history, use environment variables:
| Flag | Description |
|---|---|
| Prevents deletion of backups (ransomware protection) | |
| Users can only access repos matching their username | |
| Enable HTTPS with and | |
| Bind to localhost only (use with reverse proxy) |
Example with append-only mode:
Common issues:
NetBird provides a secure, peer-to-peer encrypted connection between your machines without needing to expose ports or configure complex firewall rules. This makes it ideal for securely connecting your ZeroByte instance to a remote REST server for offsite backups.
On your offsite server (where REST server is running), install NetBird:
On your ZeroByte server, install NetBird using a setup key from the NetBird dashboard:
After installation, run to connect.
In the NetBird dashboard:

This allows your ZeroByte server to communicate with the REST server on your offsite machine through the NetBird VPN connection.
The repository should now show as healthy and connected through the NetBird VPN.
You can trigger a manual backup immediately using the "Backup Now" button, or wait for the scheduled backup to run.
This configuration provides several advantages:
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。