Back to blogTechnical Guide

    PBS Replication: configure Proxmox Backup Server replication (push & pull)

    March 4, 2026
    14 min read

    PBS replication (Proxmox Backup Server) consists of automatically synchronizing your backups between two remote PBS servers. It is the essential building block of a 3-2-1 strategy: your backups exist on two geographically separated sites, protecting you against a local disaster (fire, ransomware, hardware failure).

    This guide covers two concrete scenarios: replication with NimbusBackup (on request to support) and replication between your own PBS instances using push and pull modes — including if you are a NimbusBackup customer with DatastoreAdmin rights. Whether you are looking to configure a PBS sync remote or understand the difference between PBS pull vs push, you are in the right place.

    1. How Proxmox Backup Server replication works

    Proxmox Backup Server natively includes a sync remote mechanism that allows copying snapshots from one datastore to another PBS. Replication is incremental: only modified chunks are transferred, thanks to PBS native deduplication. This significantly reduces the required bandwidth.

    PBS terminology: a Remote refers to the authenticated connection to another PBS. A Sync Job is the scheduled task that copies snapshots via this remote. Together, they form PBS replication.

    Push mode (sync)

    The source PBS sends its backups to the remote PBS. The PBS that receives backups from your PVE nodes initiates the transfer.

    Pull mode (sync)

    The remote PBS pulls backups from the source PBS. The destination PBS initiates the synchronization.

    In both cases, the transfer uses the native PBS protocol on port 8007 (HTTPS). Data is encrypted in transit and deduplication works on both the source and destination sides.

    2. Replication with NimbusBackup (on request)

    If you are a NimbusBackup customer with multiple PBS plans (for example a Double Drive PBS, or a combination of two separate plans), you can benefit from replication between your datastores.

    Default architecture

    By default, your Proxmox VE servers send their backups directly to each of your PBS instances. There is no automatic sync job between PBS instances: each PBS receives its backup independently from your PVE nodes.

    Your PVE nodesPBS 1
    Your PVE nodesPBS 2

    Enable replication between your PBS instances

    By default, each PBS receives its backups directly from your PVE nodes. If you want to add synchronization between your two PBS instances, two options are available depending on your access level:

    DatastoreBackup access

    This is the default access level on your NimbusBackup PBS instances.

    Open a support ticket with RDEM Systems. We configure the sync job for you (pull mode recommended), schedule the synchronization and enable monitoring.

    Contact support

    DatastoreAdmin access

    On request, you can obtain admin rights on your PBS instances.

    You can configure replication yourself by following the instructions in section 3, or ask support to set it up for you via a ticket.

    See the configuration guide

    Which plan combination? Replication works between any combination of two NimbusBackup PBS plans. For example: a Single Drive PBS on site 1 and an AirGapped Drive PBS on site 2, or two Single Drive PBS on two different sites. The Double Drive PBS plan natively includes two datastores on two sites.

    Concrete example: combining LTO archival and air-gap

    Site 1

    Magnetic PBS

    HDD backup + automatic LTO tape archival. Long-term retention 30+ years.

    Sync pull

    Site 2

    AirGapped Drive PBS

    Physically rotating offline disks. Air-gap protection against ransomware.

    Result: your Proxmox VMs are backed up on two independent sites. Site 1 provides long-term archival on magnetic tape, site 2 offers total physical isolation (air-gap). Pull mode synchronization is enabled on request to support — site 2 pulls backups from site 1, without site 1 having any knowledge of site 2. This combination provides LTO durability, air-gap isolation and replica confidentiality.

    Monitoring your backups

    By default, your NimbusBackup account has DatastoreBackup access: you can back up and restore, but you cannot see the sync jobs in the PBS interface. To check the status of your backups and replication, log in to your client portal:

    Client portal:

    members.rdem-systems.com

    Dashboard with the status of your services, backups and replications.

    3. Replication between your PBS instances (admin)

    If you have administrator rights on your PBS instances — whether your own servers or a NimbusBackup PBS with the DatastoreAdmin option — you can configure PBS replication yourself. Two modes are available: push (send) and pull (fetch).

    Prerequisites

    • Two PBS servers installed and operational (version 3.x or higher)
    • Admin access (root or user with DatastoreAdmin + Remote.Audit privileges)
    • Network connectivity between both PBS instances on port 8007/tcp
    • A configured datastore on each PBS with sufficient space

    3.1 Push mode: the source PBS sends to the remote PBS

    In push mode, the PBS that receives backups from your PVE nodes initiates the send to the remote PBS. This mode is suitable when the source PBS has outbound network access to the destination.

    Data flow:

    PVE 1, 2, 3…Source PBS (backup)Remote PBS (replica)

    Step 1: Create the Remote on the source PBS

    On the source PBS, add the connection to the remote PBS:

    On the source PBS (CLI)
    # Add the remote to the distant PBS
    proxmox-backup-manager remote add pbs-distant \
      --host pbs-distant.example.com \
      --auth-id sync-user@pbs \
      --password
    
    # Verify the connection
    proxmox-backup-manager remote list

    Via the web interface: Configuration → Remotes → Add. Enter the host, user and password (or API token).

    Step 2: Create the Sync Job in Push mode

    Still on the source PBS, create a sync job:

    On the source PBS (CLI)
    # Create a push sync job
    proxmox-backup-manager sync-job create push-to-distant \
      --store local-datastore \
      --remote pbs-distant \
      --remote-store distant-datastore \
      --schedule "0/6:00" \
      --remove-vanished true
    
    # Schedule "0/6:00" = every 6 hours
    # --remove-vanished true = removes snapshots
    # that no longer exist on the source

    Via the web interface: Datastore → your-datastore → Sync Jobs → Add Sync Job. Select the remote, the remote datastore, and the schedule.

    Step 3: Create the user on the remote PBS

    On the remote PBS, create a user with minimal permissions:

    On the remote PBS (CLI)
    # Create a dedicated replication user
    proxmox-backup-manager user create sync-user@pbs \
      --comment "User for PBS replication from source"
    
    # Set the password
    proxmox-backup-manager user update sync-user@pbs --password
    
    # Grant DatastoreBackup permissions on the remote datastore
    proxmox-backup-manager acl update /datastore/distant-datastore \
      DatastoreBackup --auth-id sync-user@pbs

    Step 4: Test and validate

    On the source PBS (CLI)
    # Manually run the sync job
    proxmox-backup-manager sync-job run push-to-distant
    
    # Check the logs
    journalctl -u proxmox-backup-proxy -f | grep sync

    3.2 Pull mode: the remote PBS pulls from the source PBS

    In pull mode, the destination PBS initiates the connection to the source PBS to retrieve backups. This mode is recommended by RDEM Systems because it offers better security: even if the primary backup is compromised, the attacker has no knowledge of the existence of other backups nor any path to the replication PBS.

    Data flow:

    PVE 1, 2, 3…Source PBS (backup)Remote PBS (pulls)

    Step 1: Create the user on the source PBS

    On the source PBS, create a read-only user for the pull:

    On the source PBS (CLI)
    # Create a read-only user
    proxmox-backup-manager user create sync-reader@pbs \
      --comment "Read-only user for PBS pull replication"
    
    # Set the password
    proxmox-backup-manager user update sync-reader@pbs --password
    
    # Grant DatastoreReader only
    proxmox-backup-manager acl update /datastore/local-datastore \
      DatastoreReader --auth-id sync-reader@pbs

    Security: in pull mode, the remote PBS only needs read access on the source PBS. Even if the remote PBS is compromised, the attacker cannot delete your backups on the source PBS. Conversely, a compromise of the source PBS reveals no information about the replication PBS — the source PBS does not even know it exists.

    Step 2: Create the Remote on the remote PBS

    On the remote PBS, add the connection to the source PBS:

    On the remote PBS (CLI)
    # Add the remote to the source PBS
    proxmox-backup-manager remote add pbs-source \
      --host pbs-source.example.com \
      --auth-id sync-reader@pbs \
      --password
    
    # Verify
    proxmox-backup-manager remote list

    Step 3: Create the Sync Job in Pull mode

    On the remote PBS, create the sync job:

    On the remote PBS (CLI)
    # Create a pull sync job
    proxmox-backup-manager sync-job create pull-from-source \
      --store distant-datastore \
      --remote pbs-source \
      --remote-store local-datastore \
      --schedule "0/6:00" \
      --remove-vanished true
    
    # Manually run to test
    proxmox-backup-manager sync-job run pull-from-source

    Via the web interface: on the remote PBS, Datastore → distant-datastore → Sync Jobs → Add Sync Job. Select the remote "pbs-source", the source store, and the schedule.

    Step 4: Validate the replication

    On the remote PBS (CLI)
    # Verify that snapshots have arrived
    proxmox-backup-manager snapshot list distant-datastore
    
    # Verify integrity
    proxmox-backup-manager verify distant-datastore

    NimbusBackup customer: we can configure our PBS in pull mode from your own PBS, provided it is accessible on the Internet (port 8007). Contact support to discuss.

    4. PBS Pull vs Push: which mode to choose?

    Criteria Push Pull
    Who initiates the transfer?Source PBSRemote PBS
    Rights required on the sourceDatastoreRead (local read)DatastoreReader (read-only)
    Rights required on the destinationDatastoreBackup (remote write)DatastoreBackup (local write)
    Security if the destination is compromisedMedium — the source actively pushesStrong — read-only access on the source
    Security if the source is compromisedMedium — the source knows the destinationStrong — the source is unaware of the replica
    FirewallSource → Dest (outbound)Dest → Source (outbound)
    Typical use caseThe source site controls the sendThe DR site controls the reception
    RDEM Systems recommendationWhen the destination is not administrable Recommended

    Our recommendation: prefer pull mode. The disaster recovery site controls the synchronization and only needs read-only access on the source PBS. If the source PBS is compromised, the attacker discovers no path to the replica — the source PBS simply has no knowledge of the remote copy's existence.

    5. PBS replication best practices

    Scheduling

    • Schedule replication after PVE backup jobs complete
    • Recommended frequency: every 6 to 12 hours
    • Avoid continuous replication to prevent bandwidth saturation

    Security

    • Use dedicated accounts with minimal privileges
    • Prefer API tokens over passwords
    • Enable client-side encryption (encryption key) so data remains encrypted even in transit

    Storage

    • Plan for the same amount of space on source and destination (PBS deduplication is local)
    • Configure retention (prune) independently on each PBS
    • Monitor disk space with alerts

    Verification

    • Run a regular verify job on the destination datastore
    • Periodically test a full restore from the DR site
    • Monitor sync logs to detect failures

    Useful monitoring commands

    # List all sync jobs
    proxmox-backup-manager sync-job list
    
    # View status of a sync job
    proxmox-backup-manager sync-job status push-to-distant
    
    # List configured remotes
    proxmox-backup-manager remote list
    
    # Verify integrity of replicated backups
    proxmox-backup-manager verify <datastore>
    
    # View space used per datastore
    proxmox-backup-manager datastore list

    6. FAQ — PBS Replication

    PBS replication managed by NimbusBackup

    Don't want to manage replication yourself? Combine two NimbusBackup PBS plans (e.g. Double Drive PBS, or a Single Drive + an AirGapped Drive) and ask support to enable synchronization. 24/7 monitoring included.