Wat u gaat inrichten
BackupZit leest een Microsoft 365-tenant via Microsoft Graph met een app-registratie die alleen leesrechten heeft: in de tenant wordt niets gewijzigd of verwijderd. Elke BackupZit-agent met internettoegang downloadt de gegevens — bijvoorbeeld de agent op de machine van de console — en slaat ze op zoals elke andere back-up: gededupliceerd, versleuteld, met bewaarbeleid, kopieertaken en hersteltests. BackupZit is gratis en open source (AGPLv3), zonder licenties per gebruiker.
Waarom een aparte kopie van Microsoft 365?
Microsoft houdt de dienst draaiende, maar de gegevens erin zijn uw verantwoordelijkheid: een per ongeluk verwijderd postvak, bestanden die via een gesynchroniseerde OneDrive zijn versleuteld, of een account dat wordt verwijderd als iemand vertrekt. Prullenbakken en bewaarinstellingen staan in dezelfde tenant en verlopen. Een back-up op uw eigen opslag is een onafhankelijke kopie die u zelf beheert, buiten de tenant en zijn beheerdersaccounts.
Microsoft en andere leveranciers verkopen Microsoft 365-back-up ook als clouddienst, meestal per gebruiker of per gigabyte gefactureerd. BackupZit is de zelfgehoste variant: de gegevens komen op uw NAS, server of S3-bucket terecht en de enige kosten zijn de opslag.
Wat u nodig hebt
- Een BackupZit-console — een kleine Linux-VM (2 vCPU, 2–4 GB RAM, schijf van 16–20 GB) uit het kant-en-klare image op de downloadpagina, of het installatiescript op een bestaande Debian-, Ubuntu-, AlmaLinux- of Rocky Linux-server.
- Een agent die de gegevens downloadt: Windows of Linux, met HTTPS-toegang tot
login.microsoftonline.com,graph.microsoft.comen, voor OneDrive- en SharePoint-bestanden,*.sharepoint.com. De agent op de machine van de console volstaat. - Back-upopslag: SFTP, een SMB-share, een S3-compatibele bucket, Azure Blob Storage of een gehard BackupZit-repository.
- Een globale beheerder van de tenant, eenmalig, om de app te registreren en toestemming te geven.
Stap 1 — Een app registreren in Microsoft Entra ID
Eén keer per tenant, in het Microsoft Entra-beheercentrum:
- App registrations → New registration: geef de app een naam, bijvoorbeeld
BackupZit, kies Accounts in this organizational directory only, geen omleidings-URI. Noteer de Application (client) ID en de Directory (tenant) ID op de overzichtspagina. - Certificates & secrets → New client secret: kies een looptijd (bijv. 24 maanden) en kopieer meteen de Value van het geheim — die wordt maar één keer getoond. De Secret ID is niet het geheim.
- API permissions → Add a permission → Microsoft Graph → Application permissions (niet gedelegeerd):
Back-up van Machtigingen E-mail en OneDrive User.Read.All,Mail.Read,Files.Read.AllAgenda's en contactpersonen ook Calendars.Read,Contacts.ReadSharePoint-sites ook Sites.Read.All - Klik op Grant admin consent for …. Tot dan toont de status Not granted en worden back-ups geweigerd.
Dit zijn uitsluitend leesrechten. Om de app tot bepaalde postvakken te beperken, kan een Exchange-beheerder een toegangsbeleid voor toepassingen of een bereik met RBAC for Applications toevoegen; accounts daarbuiten worden dan als onleesbaar gemeld.
Stap 2 — Een opslagdoel toevoegen
Open in de console Opslag en voeg een doel toe — bijvoorbeeld een SMB-share op een NAS voor de eerste kopie en een S3-bucket met Object Lock voor de externe kopie. Laat Back-ups versleutelen (AES-256) aan (standaard): mail en bestanden worden op de agent met AES-256 versleuteld voordat ze de agent verlaten. Bewaar de herstelsleutel die de console toont gescheiden van de back-ups, bijvoorbeeld geprint of in een wachtwoordmanager.
Stap 3 — De Microsoft 365-taak maken
- Maak onder Back-uptaken een taak van het type Microsoft 365 en kies de agent die downloadt.
- Vul de Directory (tenant) ID, Application (client) ID en Client secret uit stap 1 in. Het geheim wordt versleuteld opgeslagen.
- Kies wat er geback-upt wordt: E-mail, OneDrive, Agenda's en contactpersonen, SharePoint-sites — in elke combinatie.
- Kies de accounts: Alle accounts met een postvak of OneDrive (later toegevoegde accounts worden automatisch meegenomen; uitzonderingen onder Behalve, één per regel) of Alleen deze accounts. Accounts zonder licentie worden overgeslagen. Voor SharePoint geldt dezelfde keuze voor sites: alle sites met uitzonderingen, of alleen opgegeven adressen zoals
https://contoso.sharepoint.com/sites/sales. - Klik in plaats van adressen te typen op Kiezen uit de lijst: de console leest de accounts en sites van de tenant met de zojuist ingevoerde app en laat u ze aanvinken.
- Kies het opslagdoel, een planning (bijv. elke nacht) en het bewaarbeleid.
Bij het opslaan meldt de console zich aan als de app en controleert machtigingen, accounts en sites, zodat een verkeerd geheim of ontbrekende beheerderstoestemming meteen zichtbaar is.
De eerste back-up downloadt alles. Elke volgende back-up somt de mappen opnieuw op, maar downloadt alleen nieuwe of gewijzigde berichten en bestanden (gelezen, gemarkeerde, verplaatste of bewerkte berichten tellen als gewijzigd); ongewijzigde gegevens worden uit de vorige back-up overgenomen. Microsoft beperkt hoe snel een app mag lezen — BackupZit wacht als Microsoft daarom vraagt en gaat dan verder, waardoor een eerste back-up van grote postvakken uren kan duren.
Wat wordt geback-upt
| Gegevens | Opgeslagen als |
|---|---|
Alle mappen en submappen; elk bericht volledig met bijlagen als .eml-bestand, genoemd naar datum en onderwerp. Outlook, Thunderbird en de meeste mailprogramma's openen het. | |
| OneDrive | Alle bestanden en mappen met hun wijzigingstijd. |
| Agenda's | Elke agenda; elke afspraak als iCalendar-bestand (.ics) met tijd, locatie, deelnemers, herinnering en herhaling. Outlook, Google Agenda en Thunderbird importeren het. |
| Contactpersonen | Contactpersonen en contactmappen als vCards (.vcf). |
| SharePoint | Elke documentbibliotheek van elke site, met alle mappen en bestanden. Teams-bestanden staan in SharePoint en worden meegenomen. |
Een back-up bevat één map per account — ana@contoso.com/Mail/Inbox/…, …/OneDrive/…, …/Calendar/…, …/Contacts/… — en SharePoint/<site>/<bibliotheek>/…. Omdat het standaardformaten zijn, blijven de bestanden ook zonder BackupZit leesbaar.
Stap 4 — Een externe kopie (3-2-1)
Voeg een taak van het type Back-upkopie toe met de Microsoft 365-taak als bron en een tweede doel op een andere plek — een S3-bucket met Object Lock of een gehard repository maakt die kopie onveranderlijk. Alleen gegevens die nog niet op de bestemming staan worden verzonden, en de kopie heeft een eigen bewaarbeleid. Automatische hersteltests (standaard wekelijks, onder Instellingen → Hersteltests) herstellen een willekeurige steekproef uit de nieuwste back-up en controleren elke byte tegen de opgeslagen checksums.
Herstellen
- Bladeren en downloaden: open in een back-uprun de mailmappen, OneDrive, agenda's of contactpersonen van een account, of een SharePoint-site; vink berichten, afspraken, bestanden of mappen aan en download ze — één bestand zoals het is, meerdere als ZIP. Open de
.eml-bestanden in Outlook of sleep ze naar een postvak. - Naar een map herstellen op een willekeurige agent: berichten als
.eml, afspraken als.ics, contactpersonen als.vcf, OneDrive- en SharePoint-bestanden zoals ze waren, onder<map>/<account>/…en<map>/SharePoint/….
Beperkingen om te weten
- Rechtstreeks herstellen in een postvak of OneDrive is nog niet mogelijk (gepland; het schrijft dan alleen in een nieuwe map en overschrijft nooit). Voorlopig downloadt u of herstelt u naar een map.
- Niet inbegrepen: Teams-chats en kanaalberichten, SharePoint-lijsten en -pagina's (alleen documentbibliotheken), bijlagen van afspraken, foto's van contactpersonen, afzonderlijk gewijzigde exemplaren van een reeks en gedeelde postvakken zonder gebruikersaccount.
- Tijden van afspraken worden in UTC opgeslagen.
Probleemoplossing
- AADSTS7000215 / invalid client secret: de ID van het geheim is gekopieerd in plaats van de Value, of het geheim is verlopen — maak een nieuw geheim en vul het in bij de taak.
- Missing application permissions / Authorization_RequestDenied: voeg de machtigingen toe als toepassingsmachtigingen en klik op Grant admin consent.
- The account has no Exchange Online mailbox: het account heeft geen Exchange-licentie (of is een contactpersoon); haal het uit de taak.
- Een run met waarschuwingen somt berichten of bestanden op die niet gelezen konden worden (bijv. een OneNote-notitieblok); de rest van de back-up is volledig.
Volgende stappen
Download BackupZit, bekijk alle Microsoft 365-functies of lees het hoofdstuk Microsoft 365 in de handleiding in de console. Dezelfde console maakt ook back-ups van servers en virtuele machines — zie de handleidingen voor Proxmox VE en Hyper-V. Vragen zijn welkom in GitHub Discussions. Bedrijven kunnen commerciële support van MaxZit krijgen (alleen in het Engels).