selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

burp logo

Self-host burp

3.3.0

Client-server backup and restore with delta differencing

ReleaseOpen SourceOther
Updated5 months ago
LanguageC
Setup difficultyAdvanced
Stars
503
Requires
Librsync, OpenSSL, Uthash, Zlib
Install with Homebrew

What is burp?

Burp (BackUp and Restore Program) is a network backup solution with a client-server architecture. The server runs on Unix-like systems while clients support Linux, Windows, and macOS. It uses librsync for delta differencing to minimize network traffic and storage, supports Windows VSS for consistent Windows backups, and provides SSL-encrypted communication with automatic certificate management. Key features include multiple retention periods, data deduplication, email notifications, a live ncurses status monitor, pre/post backup scripts, and automatic client upgrades. The server stores backups in a filesystem-based structure without requiring a separate database. Burp is licensed under AGPLv3 and developed by Graham Keeling.

Should you self-host burp?

burp scores 52/100 on selfhost.directory (how scoring works) and ranks #28 of 46 in Backup. It has 503 GitHub stars.

It shipped 2 stable releases in the past year. The latest, 3.3.0, came out on 30 May 2026. New versions land roughly every 5 months.

Setup is advanced: plan for several services and some ongoing maintenance. It is Other-licensed and written mostly in C.

Its closest alternative on selfhost.directory is Restic (82/100, 36 853 stars). It scores higher overall, so compare the two before you pick. See burp vs Restic side by side.

Features

  • Automatic certificate management
  • Automatic client upgrade
  • Bare metal restore
  • Client-side encryptionDisables delta differencing when enabled
  • Compression
  • Data deduplication
  • Delta differencing
  • Email notifications
  • Flexible retention policies
  • Live status monitor
  • Network rate limiting
  • Pre/post backup scripts
  • Resume interrupted backups
  • SSL encryption
  • Windows VSS support

burp README

How to install burp

Install burp with Homebrew

Homebrew package manager

brew install burp

Installs to /usr/local subdirectories

How to configure burp

  • ca_confPath to certificate authority configuration file

    Path to certificate authority configuration file

    values: [path]

  • directoryPath to directory where backups are stored

    Path to directory where backups are stored

    values: [path]

  • encryption_passwordEnable client-side AES-CBC-256 file encryption

    Enable client-side AES-CBC-256 file encryption

    values: [password]

  • excludePath to exclude from backup

    Path to exclude from backup

    values: [path]

  • includePath to include in backup

    Path to include in backup

    values: [path]

  • keepNumber of backups to keep (retention)

    Number of backups to keep (retention)

    values: [number]

  • listenMain TCP address and port the server listens on

    Main TCP address and port the server listens on

    values: [address]:[port]

  • listen_statusTCP address and port for status requests

    TCP address and port for status requests

    values: [address]:[port]

  • modeRun mode: server or client

    Run mode: server or client

    values: server|client

  • passwordClient password for authentication

    Client password for authentication

    values: [password]

  • portDefault TCP port for client connections

    Default TCP port for client connections

    values: [port]

  • ssl_certPath to SSL certificate

    Path to SSL certificate

    values: [path]

  • ssl_cert_caPath to SSL CA certificate

    Path to SSL CA certificate

    values: [path]

  • ssl_keyPath to SSL private key

    Path to SSL private key

    values: [path]

  • timer_scriptPath to timer script for scheduled backups

    Path to timer script for scheduled backups

    values: [path]

burp releases & version history

FAQ

What is the best file system to use on the server?

The author has done all testing on ext4 and recommends ensuring sufficient inodes are configured at filesystem creation time.

Do I need to install cygwin on Windows?

No, cygwin is not required on Windows.

What are the main dependencies?

The main dependencies are librsync, openssl, zlib (>=1.2.5 recommended), and uthash.

What operating systems do I need to be running?

The burp server needs to run on a Linux-style operating system. The burp client can run on Linux, Windows, or Mac.

More in Backup Management

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…