Zum Inhalt springen

Erste Schritte

Nach Abschluss des Einrichtungsassistenten sind das die Schritte zwischen einer leeren Installation und einer nachweislich wiederherstellbaren Sicherung.

Ein Mandant ist ein Kunde oder eine Organisation: Er erhält einen eigenen Verschlüsselungsschlüssel, und seine Daten (Quellen, Sicherungen, Nutzer) sind durch PostgreSQL Row Level Security von jedem anderen Mandanten isoliert. Community- und Business-Edition verwalten genau einen Mandanten; Service Provider verwaltet beliebig viele (siehe Lizenz und Editionen). Legen Sie den ersten unter Mandanten → Neuer Mandant an (ein Name und ein Slug, der in Exporten und Integrationen verwendet wird, einmal gesetzt fest), oder wechseln Sie mit dem Mandanten-Umschalter in der oberen Leiste in ihn hinein. Der größte Teil des restlichen Restow bezieht sich auf den dort jeweils aktiven Mandanten.

Restow spricht mit Microsoft 365 ausschließlich über die Microsoft-Graph-API, niemals über Exchange Web Services (EWS) oder PowerShell-Remoting. Das Verbinden eines Mandanten hat zwei Teile: die Backup-App-Registrierung, einmal je Restow-Installation erledigt (von Ihnen, dem Betreiber), und den Admin-Consent, einmal je Kunden-Mandant erledigt.

2a. Die Backup-App in Entra registrieren (einmalig, als Betreiber)

Abschnitt betitelt „2a. Die Backup-App in Entra registrieren (einmalig, als Betreiber)“

Im Entra Admin Center (oder im Azure-Portal), unter Identität → Anwendungen → App-Registrierungen → Neue Registrierung:

  1. Name: etwas Erkennbares, z. B. Restow; Kunden sehen ihn auf dem Consent-Bildschirm.
  2. Unterstützte Kontotypen: Wählen Sie die Option, die mit „Konten in einem beliebigen Organisationsverzeichnis“ beginnt (die mehrmandantenfähige Variante). Das ist nötig, damit Kunden-Mandanten außerhalb Ihres eigenen den Consent erteilen können. Wählen Sie nicht „Nur Konten in diesem Organisationsverzeichnis“.
  3. Redirect-URI: für die Client-Credentials-Aufrufe selbst nicht nötig, aber für den Rückweg des Admin-Consents erforderlich (Schritt 2c). Typ Web; der genaue Wert ergibt sich aus Ihrer RESTOW_PUBLIC_URL: <RESTOW_PUBLIC_URL>/api/v1/sources/m365/consent/callback.
  4. Registrieren, dann die Anwendungs-ID (Client-ID) notieren. Sie kommt in ENTRA_CLIENT_ID.

Fügen Sie unter API-Berechtigungen → Berechtigung hinzufügen → Microsoft Graph → Anwendungsberechtigungen genau diese hinzu (alle brauchen Admin-Consent):

Berechtigung Wofür Erforderlich
Mail.ReadWrite Mail sichern und wiederherstellen. Nur-Lesen reicht nicht, Restore schreibt. Ja
MailboxSettings.Read Zeitzone / Regionaleinstellungen. Ja
Calendars.ReadWrite Kalender sichern und wiederherstellen. Ja
Contacts.ReadWrite Kontakte sichern und wiederherstellen. Ja
Files.ReadWrite.All OneDrive sichern und wiederherstellen (Upload-Sessions). Ja
User.Read.All Verzeichnis-Sync, Postfachliste, Schutzregeln. Ja
Group.Read.All Auflösen einer gruppenbasierten Schutzregel. Ja
Directory.Read.All Verzeichnis-Sync, gelöschte Nutzer, Rollenprüfungen. Ja
Organization.Read.All Mandantenname und Lizenzinfo (nur Anzeige). Ja
Mail.Send Nur wenn die Benachrichtigungs-Mail den Microsoft-Graph-Transport nutzt (Einrichtungsassistent oder Einstellungen). Nur bei Nutzung

Der klassische Fehler ist, Mail.Read statt Mail.ReadWrite zu erteilen: Die Sicherung läuft einwandfrei, dann scheitert jeder Restore mit einem 403. Restows Berechtigungsprüfung (Schritt 2d) erkennt und benennt genau das.

Fügen Sie außerdem die delegierten Microsoft-Graph-Berechtigungen openid und profile hinzu (unter Delegierte Berechtigungen). Diese geben Restow keinerlei Datenzugriff; sie lassen nur die bestätigende Anmeldung der Administration in Schritt 2c abschließen, ohne einen zweiten Consent-Dialog.

Fügen Sie dann unter Zertifikate & Geheimnisse Zugangsdaten hinzu, und zwar ein Zertifikat (bevorzugt; laden Sie das öffentliche Zertifikat hoch, halten Sie den privaten Schlüssel vom Repository fern, Pfad in ENTRA_CLIENT_CERT_PATH) oder ein Client-Secret:

  1. Zertifikate & Geheimnisse → Client-Geheimnisse → Neues Client-Geheimnis.
  2. Wählen Sie eine Gültigkeitsdauer. Microsoft begrenzt sie auf 24 Monate.
  3. Kopieren Sie den Wert sofort: Entra zeigt ihn nur einmal; er ist nach dem Verlassen der Seite aus dem Portal verschwunden. Fügen Sie ihn in ENTRA_CLIENT_SECRET in .env ein (niemals ins Repository, niemals in ein Log).

Füllen Sie genau eines aus, ENTRA_CLIENT_SECRET oder ENTRA_CLIENT_CERT_PATH; sind beide gesetzt, nutzt Restow das Zertifikat.

2b. Die Microsoft-365-Quelle in Restow hinzufügen

Abschnitt betitelt „2b. Die Microsoft-365-Quelle in Restow hinzufügen“

Unter Quellen → Quelle hinzufügen → Microsoft-365-Tenant: Geben Sie einen Namen an, optional eine Tenant-ID oder verifizierte Domain, um die Administration direkt zum richtigen Mandanten zu führen, und einen anfänglichen Schutzumfang: alle Postfächer und OneDrives oder Mitglieder einer Gruppe (eine neue Quelle kann nicht direkt im Umfang „nur ausgewählte Objekte” starten; wechseln Sie danach bei Bedarf unter Geschützte Objekte dorthin, siehe Schritt 4). Restow legt die Quelle im Zustand „Nicht verbunden“ an.

Noch auf der Quelle, Consent-Link erzeugen (eine Stunde gültig). Öffnen Sie ihn selbst oder schicken Sie ihn an den Global Administrator des Kunden. Diese Person meldet sich im eigenen Mandanten an, prüft die angefragten Anwendungsberechtigungen und stimmt für die gesamte Organisation zu. Danach leitet Microsoft sie zur Redirect-URI von Restow zurück, wo sie sich ein zweites Mal anmeldet, um zu bestätigen. Diese zweite Anmeldung ist es, die Restow erlaubt zu bestätigen, dass die Tenant-ID tatsächlich zu der Administration gehört, die zugestimmt hat (statt einem unsignierten Callback-Parameter zu vertrauen), und dass das Konto Global Administrator oder Administrator für privilegierte Rollen ist. Keine geringere Rolle kann diesen Consent erteilen. Restow speichert das Konto der bestätigten Administration als „Consent erteilt von” und reiht den ersten Verzeichnisabgleich des Mandanten sofort ein. Postfächer und OneDrives erscheinen in der Regel innerhalb weniger Augenblicke, nicht erst nach bis zu sechs Stunden.

Ein Mandant kann in der gesamten Installation nur mit einer Quelle verbunden sein; ein erneuter Consent von einem bereits verbundenen Mandanten wird abgelehnt, ohne zu verraten, zu welcher Quelle er gehört.

Sobald der Consent abgeschlossen ist, prüft Restow automatisch jede Berechtigung und zeigt eine Checkliste (Berechtigungen prüfen, um sie erneut auszuführen). Jede ist Erteilt, Nur lesend (der oben beschriebene Lese-/Schreib-Fehler) oder Fehlt. Alle erforderlichen Berechtigungen müssen als erteilt angezeigt werden, bevor Sicherungen laufen können; wiederholen Sie den Admin-Consent, nachdem Sie die App-Registrierung korrigiert haben, um ihn zu aktualisieren.

Unter Quellen → Quelle hinzufügen → IMAP-Postfach: Server-Host und -Port, Verbindungssicherheit (TLS auf 993, STARTTLS auf 143 oder unverschlüsselt, nur für Entwicklung geeignet, da das Passwort dabei im Klartext übertragen wird), Benutzername und Passwort, sowie Verbindung testen, bevor Sie speichern, um Tippfehler früh zu erkennen. Dieses eine Passwort gilt für jedes Postfach, das Sie unter dieser Quelle hinzufügen; eine OAuth2-Anmeldung für IMAP-Quellen ist in Entwicklung.

IMAP-Quellen haben kein Entra-artiges Verzeichnis: Fügen Sie Postfächer als manuelle Liste hinzu oder importieren Sie eine CSV-Datei (Spalten login, name, email, in beliebiger Reihenfolge; Komma, Semikolon oder Tabulator funktionieren alle).

Unter Geschützte Objekte → Quellen und Regeln → Regeln bearbeiten für eine Quelle: Der Umfang ist alle im Verzeichnis, Mitglieder einer Gruppe (nur direkte und verschachtelte Mitglieder) oder nur ausgewählte Objekte (standardmäßig ist niemand geschützt, nur was Sie ausdrücklich einschließen), mit optionaler Ausschlussliste (Adresse, UPN oder Objekt-ID, eine pro Zeile; bleibt unabhängig vom aktiven Umfang erhalten), die vor dem Umfang angewendet wird, sowie einem Umschalter dafür, ob geteilte/Ressourcenpostfächer eingeschlossen sind (Microsoft Graph kann ein geteiltes Postfach nicht von einem Nutzer mit gesperrter Anmeldung unterscheiden, daher deckt diese eine Einstellung beides ab). Eine Einzelentscheidung für ein Objekt („immer einschließen“ oder „immer ausschließen“) schlägt die Regel. Das Speichern reiht einen Verzeichnisabgleich ein, der die Änderung anwendet.

Bei „nur ausgewählte Objekte” schließen Sie Objekte einzeln von der Seite Geschützte Objekte aus oder ein, oder in Sammelaktionen: Zeilen ankreuzen (oder „alle N passenden auswählen” innerhalb des aktiven Filters, bis zu 1.000 Objekte auf einmal) und Einschließen, Ausschließen oder „Regeln wieder anwenden” anwenden, jeweils hinter einer Bestätigung mit der genauen Anzahl. Jedes Objekt erhält einen eigenen Audit-Eintrag; ein großer Stapel zusätzlich einen zusammenfassenden.

Möglicherweise gibt es hier nichts mehr auszulösen: Restow reiht eine erste Sicherung automatisch ein, sobald ein Objekt geschützt wird (ein Einschließen, ein Verzeichnisabgleich, der es neu aktiv findet, oder ein IMAP-Import), sodass ein erster Lauf bereits eingereiht oder abgeschlossen sein kann, wenn Sie diese Seite öffnen. Jetzt sichern (je Objekt) und Alle sichern stehen unter Backup weiterhin bereit, um etwas von Hand erneut auszuführen. Beobachten Sie den Fortschritt live: erledigte/gesamte Elemente, Bytes, eine ETA und, für Microsoft 365, eine etwaige Drosselungs-Wartezeit, die Microsoft auferlegt, im Job angezeigt statt verborgen. Die erste Sicherung eines großen Mandanten kann legitim Tage statt Stunden dauern; das ist Microsofts eigenes Ratenlimit, kein Fehler.

6. Wiederherstellbarkeit bestätigen: nicht bei „Sicherung erfolgreich“ stehen bleiben

Abschnitt betitelt „6. Wiederherstellbarkeit bestätigen: nicht bei „Sicherung erfolgreich“ stehen bleiben“

Eine Sicherung, die Restow nicht zurückgelesen hat, gilt nicht als vertrauenswürdig. Warten Sie unter Wiederherstellbarkeit entweder auf die nächste geplante Prüfung oder klicken Sie Jetzt prüfen: Restow liest eine Zufallsstichprobe aus Mails, Dateien, Kalendereinträgen und Kontakten aus der letzten Sicherung über den Restore-Pfad zurück und vergleicht Größe und SHA-256-Hash mit dem Manifest. Das Ergebnis je Objekt ist Bereit, Achtung oder Nicht wiederherstellbar. Ein Objekt ohne geprüften Restore zählt als Nicht geprüft, nicht als stillschweigend in Ordnung. Eine Test-Wiederherstellung in ein lebendes Postfach oder OneDrive gibt es noch nicht. Was diese Prüfung genau tut und noch nicht prüft, steht unter Wie Restow prüft, ob eine Sicherung wiederherstellbar ist.

7. Selbst eine erste Test-Wiederherstellung durchführen

Abschnitt betitelt „7. Selbst eine erste Test-Wiederherstellung durchführen“

Bevor Sie sich im Ernstfall auf Restow verlassen, stellen Sie etwas von Hand wieder her: Öffnen Sie Wiederherstellen, durchsuchen Sie eine Sicherung zu einem bestimmten Zeitpunkt, wählen Sie ein Element oder einen Ordner und stellen Sie es wieder her: an den ursprünglichen Ort, in ein anderes Konto oder als ZIP-/EML-Download (siehe Backup und Restore für die genaue Funktionsweise von Zielen und Modi). Bestätigen Sie, dass es dort gelandet ist, wo Sie es erwartet haben, und sich korrekt zurücklesen lässt.

Sobald das erledigt ist, richten Sie Zeitpläne ein, damit Sicherungen, Prüfung und Verzeichnis-Sync von selbst laufen, und ziehen Sie weitere Speicherziele in Betracht, damit ein einzelner Speicherausfall nicht jede Kopie trifft.