Integriertes rsync auf eine moderne, unterstützte Version aktualisieren (von 3.0.7 auf 3.2.x)

QNAP-Systeme werden derzeit ausgeliefert mit:

rsync Version 3.0.7, Protokollversion 30

Diese Version wurde 2009 veröffentlicht und es fehlen ihr viele wichtige Verbesserungen in Bezug auf Benutzerfreundlichkeit, Kompatibilität, Leistung und Sicherheit, die in aktuellen rsync-Releases verfügbar sind.

Anfrage

Bitte aktualisieren Sie das mitgelieferte rsync-Paket auf eine aktuelle, stabile Upstream-Version (vorzugsweise 3.2.x).

Wichtige Begründungen

  1. Bessere Fortschrittsanzeigen
    Eine der größten Einschränkungen in Sachen Benutzerfreundlichkeit ist das Fehlen von: --info=progress2

Moderne Versionen von rsync bieten eine Gesamtfortschrittsanzeige für alle Übertragungen, was unerlässlich ist für:

  • Überwachung von langlaufenden Backups

  • Abschätzen der verbleibenden Übertragungszeit

  • Beobachtung des Gesamtdurchsatzes über viele Dateien hinweg

  • Bessere Übersicht für Scripting und Automatisierung

Ohne dieses Feature sehen Anwender nur den Fortschritt pro Datei (--progress), was bei großen Datenmengen mit vielen kleinen Dateien nahezu unbrauchbar ist.

Beispiel:
Modernes rsync:
rsync -ah --info=progress2 source/ dest/

Dies bietet:

  • Gesamten prozentualen Fortschritt

  • Aggregierte Übertragungsgeschwindigkeit

  • Geschätzte verbleibende Zeit

  • Übertragene Gesamtmenge an Bytes

Diese Funktionen gelten inzwischen als Standard für den operativen Einsatz.

  1. Sicherheits- und Wartungsbedenken
    rsync 3.0.7 ist extrem veraltet und entspricht nicht mehr modernen Sicherheitsanforderungen.

Neuere Versionen bieten:

  • Sicherheitskorrekturen

  • Verbesserungen der Protokollhärtung

  • Verbesserte Prüfsummenbehandlung

  • Sichereres Daemon-Verhalten

  • Bessere Kompatibilität mit aktuellen Linux/macOS-Systemen

  1. Leistungsverbesserungen
    Neuere rsync-Versionen bieten:
  • Schnellere Generierung von Dateilisten

  • Verbesserte inkrementelle Rekursion

  • Bessere Speicherverwaltung

  • Optionale xxhash/zstd-Komprimierungsunterstützung

  • Optimierte Verarbeitung von Sparse-Dateien

Diese Verbesserungen sind besonders wichtig bei NAS-Workloads mit Millionen von Dateien.

  1. Fehlen moderner Funktionen in 3.0.7
    Beispiele für fehlende oder limitierte Funktionen:
  • --info=progress2

  • Moderne Optionen für Prüfsummen/Komprimierung

  • Verbesserte Behandlung von Teilübertragungen

  • Besserer Support für ACLs und xattrs

  • Neuste Protokoll-Optimierungen

  • Verbesserter IPv6-Support

  • Erweiterte Logging- und Debugging-Kontrollen

Danke für den Vorschlag! Wir planen, die rsync-Version in einem zukünftigen Release zu aktualisieren, hauptsächlich im Rahmen des QTS/QuTS hero 6 Updates.

1 „Gefällt mir“

Da sind wir also. QuTS 6 ist draußen und ich habe es auf einer Testmaschine installiert.

Bin immer noch auf 3.0.7

Entschuldige die Verwirrung! Zur Klarstellung: Wir meinten nicht, dass das rsync-Update bereits im ersten Release von QuTS hero 6 enthalten sein würde. Vielmehr wird unser Produktmanager dieses Update für ein zukünftiges Release vorsehen, und der genaue Zeitplan wird derzeit noch ausgearbeitet. Vielen Dank für deinen Vorschlag!

Hallo @SteveKo,

ich möchte noch einmal betonen, wie wichtig es ist, das so schnell wie möglich zu beheben. Version 3.0.7 ist ernsthaft verwundbar und stellt ein Risiko für unsere Daten und Sicherheit dar. Zum Beispiel:

  • CVE-2014-9512: Ein bösartiger Server kann Dateien außerhalb des vorgesehenen Zielorts schreiben (behoben in 3.1.2).

  • CVE-2016-9840 bis 9843: zlib-Schwachstellen in der mitgelieferten Version (behoben in 3.1.3).

  • CVE-2017-16548, 17433, 17434 und CVE-2018-5764: Schwächen bei Argumenten- und Checksumen-Handling auf Receiver und Daemon (behoben in 3.2.0).

  • CVE-2022-29154: Ein bösartiger Server kann beliebige Dateien auf dem Client schreiben (behoben in 3.2.5).

  • CVE-2024-12085 bis 12088 und 12747 (behoben in 3.4.0): Informationsleck, Path Traversal, Umgehung von --safe-links und ein Symlink-Race.

  • CVE-2026-53791 (KRITISCH bewertet).

  • CVE-2026-41035 ist ein Use-after-free beim xattr-Handling. Laut Timeline des Meldenden wurde er in rsync 3.0.1 eingeführt, d. h. eure 3.0.7 ist betroffen und euer Build zeigt xattr-Unterstützung. Der Maintainer meinte zwar, es sei meist ein Weg für den Client, seine eigene Verbindung zum Absturz zu bringen, aber die Auswirkung eines bösartigen Servers wurde noch geprüft. openwallopenwall

  • Version 3.4.3 (20.05.2026) behob sechs CVEs, die alle 3.4.2 und ältere Versionen betrafen – darunter ein ACL-Bypass für Daemon-Hostnamen (CVE-2026-43617, mittel eingestuft) und ein Off-by-One-Stack-Write, bei dem RSYNC_PROXY gesetzt sein muss (CVE-2026-45232).

  • Version 3.5.0 (13.08.2026) wird als großes Sicherheitsupdate beschrieben. Unter den behobenen Problemen sind über 30 CVEs, davon etwa 20 mit Einstufung HOCH.

  • Die Red Hat-Warnung zeigt, um welche Bug-Arten es geht: Dazu gehören Command-Injection über mehrere Codepfade, Out-of-Bounds-Write im Heap über eine manipulierte Argumentliste, Speicherbeschädigung durch manipulierte Dateieinträge, beliebiges Lesen, Schreiben und Löschen von Dateien, ein Umgehen der auth users-Autorisierung und ein rrsync-Verzeichnis-Escape.

Danke.

Hi Sam. :nerd_face:

Während du wartest, gibt es eine neuere Version von rsync über Entware:

[~] # opkg info rsync
Package: rsync
Version: 3.4.1-3
Depends: libc, libssp, librt, libpthread, libpopt, zlib, libattr, libacl, libzstd, libiconv-full
Provides: rsync-any
Status: unknown ok not-installed
Section: net
Architecture: x64-3.2
Size: 238004
Filename: rsync_3.4.1-3_x64-3.2.ipk
Description: rsync ist ein Programm, mit dem Dateien zu und von entfernten Rechnern kopiert werden können – ähnlich wie mit rcp. Es bietet jedoch deutlich mehr Optionen als rcp und nutzt das rsync-Protokoll für Remote-Updates, um Dateiübertragungen erheblich zu beschleunigen, wenn die Zieldatei bereits existiert.

Das rsync-Remote-Update-Protokoll ermöglicht es rsync, nur die Unterschiede zwischen zwei Dateisätzen über die Netzwerkverbindung zu übertragen.

Danke! Gut zu wissen.