Open Source, AGPL-3.0
Restow ist ein Repository, ein Container-Image und ein Release. Alles
außerhalb des Verzeichnisses ee/ steht unter AGPL-3.0
mit der Restow Module Exception, einer zusätzlichen Erlaubnis, mit der
sich der Kern unabhängig von der Lizenz der Module mit Modulen
kombinieren lässt. Die Funktionen von Business und Service Provider liegen
in ee/, unter der einsehbaren Restow Enterprise
License: Der Code ist sichtbar, aber der Einsatz einer
Edition-Funktion in Produktion braucht einen Lizenzschlüssel.
Restow' Kern ist unter AGPL-3.0 lizenziert: frei nutzbare, einsehbare und veränderbare Software, einschließlich der Community-Edition, die für eine Organisation kostenlos ist, ohne Postfach-Obergrenze und ganz ohne Lizenzschlüssel. Der bereits veröffentlichte AGPL-3.0-Code lässt sich zudem nicht zurückziehen, was auch immer mit diesem Projekt später passiert.
Was heute öffentlich ist
Der vollständige Quellcode, einschließlich des Verzeichnisses
ee/, ist öffentlich auf
GitHub,
dort erscheint jedes Release. Version 0.1.0, das
erste öffentliche
Release,
ist jetzt als Beta verfügbar: testen Sie es, bevor Sie sich darauf
verlassen, und führen Sie daneben eine unabhängige Sicherung. Siehe
wie Restow entsteht für die
vollständige Beschreibung des Entwicklungsprozesses, den dieser
Code durchläuft.
Warum ausgerechnet AGPL-3.0
AGPL schließt die Lücke, die einfaches GPL für Netzwerksoftware offenlässt: ein Anbieter, der ein verändertes Restow als Dienst betreibt, muss diese Änderungen ebenfalls veröffentlichen, nicht nur bei Installationen, die er jemandem physisch als Kopie überreicht. Für ein selbst gehostetes Backup- und Archiv-Werkzeug, das auch für Service Provider gedacht ist, die es für Kunden betreiben, zählt das mehr als bei einer Desktop-App.
Die Restow Module Exception (LICENSE-EXCEPTION.md im
Repository) ist eine zusätzliche Erlaubnis nach Abschnitt 7 der AGPL:
Der Kern darf mit Modulen kombiniert und das Ergebnis weitergegeben
werden, unabhängig von der Lizenz der Module. Die Dateien in
ee/ sind solche Module, ebenso jedes andere Werk, das
nur über die in dieser Datei definierte Erweiterungsschnittstelle mit
dem Kern spricht.
Ein Repository, zwei Lizenzen
Es gibt kein getrenntes Closed-Source-Produkt. Der Code in
ee/ steht unter der Restow Enterprise License
(ee/LICENSE im Repository). Sie dürfen ihn lesen,
ausführen, unverändert kopieren und für Entwicklung und Tests ändern.
Der Einsatz einer Edition-Funktion in Produktion braucht einen
gültigen Lizenzschlüssel für diese Edition, und die Lizenzprüfung
darf weder entfernt noch umgangen werden. Ohne Schlüssel bleiben die
Funktionen gesperrt: Ein gesperrter Menüeintrag bleibt sichtbar,
ausgegraut, und führt zu den Lizenzeinstellungen, ohne Banner oder
Pop-ups.
Was die bezahlten Editionen tatsächlich hinzufügen (und was nicht)
Business und Service Provider schalten frei, was in ee/
liegt: Legal Holds, den SMTP-Journal-Empfänger, Löschläufe des Archivs
(durchgesetzte Aufbewahrung), die Audit-Log-Ansicht (Suche, Details,
Prüfung der Kette), die Microsoft-Anmeldung (Entra ID) für Endnutzer,
das Provider-Team (Rollen, Mandantenbereiche), zeitgesteuerte
Zusammenfassungsberichte, die mandantenübergreifende Provider-API und
die Provider-Sicht auf das Dashboard (Mandantenmatrix, Alarme). Alles
davon steckt immer im Image, und der Lizenzschlüssel entscheidet zur
Laufzeit, was davon aktiv ist. Nicht alles ist fertig: Auf dieser
Website ist die Audit-Log-Ansicht noch in Entwicklung und die
Microsoft-Anmeldung für Endnutzer noch nicht aktiviert, siehe die
Roadmap. Die White-Label-Option für
Service Provider ist geplant, nicht gebaut.
Bewusst im Kern, in jeder Edition: das Archivformat (ohne Server lesbar), das Datenbankschema, die Einstellungen für die Archiv-Aufbewahrung und die Aufzeichnung des Audit-Logs. Jedes Lesen und jeder Restore wird in jeder Edition in das hashverkettete Audit-Log geschrieben; nur Ansehen, Durchsuchen und Prüfen gehört zu Business und Service Provider.
Der Lizenzschlüssel ist ein Fair-Play-Mechanismus, kein DRM: Er wird
offline gegen einen signierten Ed25519-Schlüssel geprüft, telefoniert
nicht nach Hause, lässt Ihren Zugriff auf eine bereits vorhandene
Version nicht ablaufen und schränkt Restore nie ein. Restore ist in
keiner Version nach Edition eingeschränkt. Siehe
Preise für die genauen Bedingungen. Sollte
die Entwicklung jemals enden, hat sich das Projekt verpflichtet, das
mindestens zwölf Monate vorher anzukündigen und ee/ dann
unter der AGPL-3.0 zu veröffentlichen; Installationen laufen ohne
Schlüssel weiter.
Beiträge
Ein Beitrag braucht zwei Dinge: die Zustimmung zum Contributor License
Agreement (eine automatische Prüfung bei jedem Pull Request fragt
einmal danach) und ein Sign-off nach dem Developer Certificate of
Origin bei jedem Commit (git commit -s). Die Einzelheiten
stehen in
CONTRIBUTING.md
im Repository.
Ihre Daten zurückbekommen, ganz ohne Restow
Open Source reicht bei Restow über den Anwendungscode hinaus bis zu den Daten selbst: das Chunk-Store-Format ist offen und dokumentiert, und ein kleines eigenständiges Werkzeug stellt daraus auch ganz ohne laufenden Restow-Server wieder her. Open Source bedeutet hier also auch, dass Sie im schlimmsten Fall Ihr eigenes Backup zurückbekommen, nicht nur den Code lesen können. Siehe Ausstiegskosten und Anbieter-Lock-in dafür, warum genau diese Garantie es wert ist, schriftlich zu existieren.
Häufig gefragt
Ist Restow wirklich Open Source, oder Open Core mit eingeschränkter Gratis-Stufe?
Beide Teile liegen in einem öffentlichen Repository, und die ehrliche Bezeichnung ist Open Core. Der Kern steht unter AGPL-3.0 mit der Restow Module Exception, und die kostenlose Community-Edition enthält bereits vollständiges Microsoft-365- und IMAP-Backup, Server- und Client-Backup, Mail-Import und -Export, nicht-destruktiven Restore und wöchentliche Restore-Prüfungen, ohne Postfach-Obergrenze und ohne erforderlichen Lizenzschlüssel. Die Funktionen von Business und Service Provider (zum Beispiel Legal Holds, der Journal-Empfänger, durchgesetzte Aufbewahrung, die Audit-Log-Ansicht und die mandantenübergreifende Provider-API) liegen in ee/ unter der einsehbaren Restow Enterprise License, nicht unter der AGPL: Der Code ist sichtbar, aber ihr Einsatz in Produktion braucht einen Lizenzschlüssel. Es ist dieselbe Codebasis und dasselbe Image, keine abgespeckte Version derselben Funktion.
Wo ist der Code?
Auf GitHub, github.com/restow-backup/restow: alles außerhalb von ee/ unter der AGPL-3.0 mit der Restow Module Exception, und ee/ unter der Restow Enterprise License. Dort erscheint jedes Release, beginnend mit 0.1.0, dem ersten öffentlichen Release.
Ist der Lizenzschlüssel eine Form von DRM?
Nein. Er telefoniert nicht nach Hause, lässt Ihren Zugriff nicht ablaufen, und schränkt Restore nie ein. Restore ist in keiner Version von Restow nach Edition oder Lizenz eingeschränkt. Es ist ein Fair-Play-Mechanismus, der Business-/Service-Provider-Funktionen einmalig, offline, gegen einen signierten Ed25519-Schlüssel freischaltet; nichts daran kann die Software aus der Ferne deaktivieren.
Darf ich den Code in ee/ lesen, ausführen und ändern?
Sie dürfen ihn lesen, ausführen und unverändert kopieren, und Sie dürfen ihn für Entwicklung und Tests ändern. Ohne Lizenzschlüssel bleiben die Edition-Funktionen gesperrt. Der Einsatz einer Edition-Funktion in Produktion, auch einer geänderten, braucht einen gültigen Lizenzschlüssel für diese Edition, und die Lizenzprüfung darf weder entfernt noch umgangen werden.
Was braucht ein Beitrag?
Die Zustimmung zum Contributor License Agreement (eine automatische Prüfung bei jedem Pull Request fragt danach) und ein Sign-off nach dem Developer Certificate of Origin bei jedem Commit (git commit -s). Die Einzelheiten stehen in CONTRIBUTING.md im Repository.