cv4pve-node-protect backs up Proxmox VE node configuration files over SSH. It connects to one or more nodes, archives the paths you choose into a tar.gz per node, organises the archives into timestamped folders and applies a retention policy automatically.
Features:
Multi-node backup in a single run
Selectable backup paths
Configurable retention policy
SSH key or password authentication (with password-from-file support)
Custom SSH port per host
No agents installed on the nodes — only SSH access required
What's new in 2.2.0
Added - Documentation site: corsinvest.github.io/cv4pve-node-protect with getting started, SSH access and security, connection, what to back up (and why /etc/. alone misses /etc/pve), archives and retention, scheduling, a step-by-step restore guide and the .NET library. Every page was checked against the code and a real backup (#12, #16) - Library: ProtectHelper with host parsing, archive names and retention as the command line tool does them (ParseHosts, ParseHostAndPort, GetArchiveFileName, IsBackupDirectoryName, GetBackupsToDelete), for callers that want the same layout (#15) - Unit tests (tests/Corsinvest.ProxmoxVE.NodeProtect.Api.Tests), run by the CI (#15) Changed - A node that fails no longer stops the run: the other nodes are still backed up, each failure is printed as ERROR [node]: …, and the run ends with Backup failed for N of M node(s): … Retention not applied. and exit code 1. Retention is skipped when a node failed, so good backups are never deleted to make room for an incomplete run (#14) - Skipped paths are reported: a path that does not exist or cannot be read is still left out, but tar's message is now printed as a warning instead of being discarded (#14) - Archives readable only by their owner on Linux and macOS: the dated folder is created with mode 700 and the archives with 600, since they contain password hashes, keys and the cluster database (#14) - --username is now always required, also with --private-key-file: the error is shown before anything is created (#14) - A path containing a single quote is rejected before connecting to the node (#15) - Updated Corsinvest.ProxmoxVE.Api.Extension and Api.Console from 9.1.15 to 9.2.4 (#11, #18) - Updated SSH.NET from 2025.1.0 to 2026.0.0 (fixes GHSA-mggc-4xg6-vcxf and GHSA-q939-rpr3-3284 in ScpClient, which node-protect does not use) (#11) - Product icon (Lucide shield-check), Windows executable icon and NuGet package description (#11) - Project metadata, symbols (Source Link, .snupkg) and code style aligned with the other cv4pve tools; CI on the shared cv4pve workflow (#10, #11) - README shortened: the details are on the documentation site (#12) Fixed - A path in --paths starting with - is now always a path: tar gets -- before the paths. Before, it was read as a tar option, so a value like --checkpoint-action=exec=… could run a command on the node (#17) - Restore instructions: the README extracted archives with tar -xvzPf … -C /root/restore. …
Yes. cv4pve-node-protect is free and open-source software released under the GPL-3.0 license.
What is the latest version of cv4pve-node-protect?
The latest version is 2.2.0, released on Sep 30, 2026.
Is it safe to download cv4pve-node-protect?
The download button links to the official installer published on github.com, the same file Windows Package Manager installs. You can verify the downloaded file by comparing its SHA-256 checksum with ce55b94aaa947f800af58ee960842d8b366b036769b4a1a6c52078640981a045.
Which Windows versions does cv4pve-node-protect support?
cv4pve-node-protect runs on Windows and is available for 32-bit (x86), 64-bit (x64), ARM64 systems.
How do I uninstall cv4pve-node-protect?
Open Settings › Apps › Installed apps, find cv4pve-node-protect and select Uninstall. From the command line, run winget uninstall --id=Corsinvest.cv4pve.nodeprotect -e.