O que você vai configurar
O BackupZit lê um tenant do Microsoft 365 pelo Microsoft Graph com um registro de aplicativo que tem apenas permissões de leitura: nada no tenant é alterado ou apagado. Qualquer agente do BackupZit com acesso à internet baixa os dados — por exemplo o agente da máquina do console — e os grava como qualquer outro backup: deduplicados, criptografados, com retenção, tarefas de cópia e testes de restauração. O BackupZit é gratuito e de código aberto (AGPLv3), sem licenças por usuário.
Por que uma cópia separada do Microsoft 365?
A Microsoft mantém o serviço funcionando, mas os dados nele são responsabilidade sua: uma caixa de correio apagada por engano, arquivos criptografados através de um OneDrive sincronizado ou uma conta removida quando alguém sai da empresa. Lixeiras e configurações de retenção ficam no mesmo tenant e expiram. Um backup no seu armazenamento é uma cópia independente que você controla, fora do tenant e das contas de administrador.
A Microsoft e outros fornecedores também vendem backup do Microsoft 365 como serviço em nuvem, normalmente cobrado por usuário ou por gigabyte. O BackupZit é a opção auto-hospedada: os dados vão para o seu NAS, servidor ou bucket S3, e o único custo é o armazenamento.
O que é preciso
- Um console do BackupZit — uma pequena VM Linux (2 vCPU, 2–4 GB de RAM, disco de 16–20 GB) a partir da imagem pronta da página de download, ou o script de instalação num servidor Debian, Ubuntu, AlmaLinux ou Rocky Linux existente.
- Um agente que baixe os dados: Windows ou Linux, com acesso HTTPS a
login.microsoftonline.com,graph.microsoft.come, para arquivos do OneDrive e SharePoint,*.sharepoint.com. O agente da máquina do console é suficiente. - Armazenamento de backup: SFTP, um compartilhamento SMB, um bucket compatível com S3, Azure Blob Storage ou um repositório reforçado do BackupZit.
- Um administrador global do tenant, uma única vez, para registrar o aplicativo e conceder o consentimento.
Passo 1 — Registrar um aplicativo no Microsoft Entra ID
Uma vez por tenant, no centro de administração do Microsoft Entra:
- App registrations → New registration: dê um nome, por exemplo
BackupZit, escolha Accounts in this organizational directory only, sem URI de redirecionamento. Anote o Application (client) ID e o Directory (tenant) ID na página de visão geral. - Certificates & secrets → New client secret: escolha a validade (p. ex. 24 meses) e copie na hora o Value do segredo — ele só aparece uma vez. O Secret ID não é o segredo.
- API permissions → Add a permission → Microsoft Graph → Application permissions (não delegadas):
Para fazer backup de Permissões E-mail e OneDrive User.Read.All,Mail.Read,Files.Read.AllCalendários e contatos também Calendars.Read,Contacts.ReadSites do SharePoint também Sites.Read.All - Clique em Grant admin consent for …. Até lá o status mostra Not granted e os backups são recusados.
São apenas permissões de leitura. Para limitar o aplicativo a algumas caixas de correio, um administrador do Exchange pode adicionar uma política de acesso a aplicativos ou um escopo de RBAC for Applications; as contas fora dele passam a aparecer como não legíveis.
Passo 2 — Adicionar um destino de armazenamento
No console, abra Armazenamento e adicione um destino — por exemplo um compartilhamento SMB num NAS para a primeira cópia e um bucket S3 com Object Lock para a cópia externa. Deixe Criptografar backups (AES-256) ativado (padrão): e-mails e arquivos são criptografados com AES-256 no agente antes de saírem dele. Guarde a chave de recuperação exibida pelo console longe dos backups, por exemplo impressa ou num gerenciador de senhas.
Passo 3 — Criar a tarefa do Microsoft 365
- Em Tarefas de backup, crie uma tarefa do tipo Microsoft 365 e escolha o agente que faz o download.
- Informe o Directory (tenant) ID, o Application (client) ID e o Client secret do passo 1. O segredo é guardado criptografado.
- Escolha o que incluir: E-mail, OneDrive, Calendários e contatos, Sites do SharePoint — em qualquer combinação.
- Escolha as contas: Todas as contas com caixa de correio ou OneDrive (contas adicionadas depois entram automaticamente; exceções em Exceto, uma por linha) ou Somente estas contas. Contas sem licença são ignoradas. Para o SharePoint, a mesma escolha vale para os sites: todos os sites com exceções, ou apenas endereços listados como
https://contoso.sharepoint.com/sites/sales. - Em vez de digitar endereços, clique em Escolher da lista: o console lê as contas e os sites do tenant com o aplicativo que você acabou de informar e permite marcá-los.
- Escolha o destino de armazenamento, um agendamento (p. ex. toda noite) e a retenção.
Ao salvar, o console entra como o aplicativo e verifica permissões, contas e sites, então um segredo errado ou a falta de consentimento aparece na hora.
O primeiro backup baixa tudo. Cada backup seguinte lista as pastas de novo, mas baixa só mensagens e arquivos novos ou alterados (mensagens lidas, sinalizadas, movidas ou editadas contam como alteradas); os dados inalterados vêm do backup anterior. A Microsoft limita a velocidade de leitura de um aplicativo — o BackupZit espera quando a Microsoft pede e continua, por isso o primeiro backup de caixas grandes pode levar horas.
O que entra no backup
| Dados | Gravados como |
|---|---|
Todas as pastas e subpastas; cada mensagem completa com anexos como arquivo .eml, com nome pela data e pelo assunto. Outlook, Thunderbird e a maioria dos programas de e-mail abrem o arquivo. | |
| OneDrive | Todos os arquivos e pastas com a data de modificação. |
| Calendários | Cada calendário; cada evento como arquivo iCalendar (.ics) com horário, local, participantes, lembrete e recorrência. Outlook, Google Agenda e Thunderbird importam o arquivo. |
| Contatos | Contatos e pastas de contatos como vCards (.vcf). |
| SharePoint | Cada biblioteca de documentos de cada site, com todas as pastas e arquivos. Os arquivos do Teams ficam no SharePoint e entram no backup. |
Um backup tem uma pasta por conta — ana@contoso.com/Mail/Inbox/…, …/OneDrive/…, …/Calendar/…, …/Contacts/… — e SharePoint/<site>/<biblioteca>/…. Como são formatos padrão, os arquivos continuam legíveis sem o BackupZit.
Passo 4 — Manter uma cópia externa (3-2-1)
Adicione uma tarefa do tipo Cópia de backup com a tarefa do Microsoft 365 como origem e um segundo destino em outro lugar — um bucket S3 com Object Lock ou um repositório reforçado torna essa cópia imutável. Só os dados que ainda não estão no destino são enviados, e a cópia tem sua própria retenção. Os testes de restauração automáticos (semanais por padrão, em Configurações → Testes de restauração) restauram uma amostra aleatória do backup mais recente e conferem cada byte com os checksums gravados.
Restauração
- Navegar e baixar: numa execução de backup, abra as pastas de e-mail, OneDrive, calendários ou contatos de uma conta, ou um site do SharePoint; marque mensagens, eventos, arquivos ou pastas e baixe-os — um arquivo como está, vários como ZIP. Abra os arquivos
.emlno Outlook ou arraste-os para uma caixa de correio. - Restaurar em uma pasta em qualquer agente: mensagens como
.eml, eventos como.ics, contatos como.vcf, arquivos do OneDrive e SharePoint como eram, em<pasta>/<conta>/…e<pasta>/SharePoint/….
Limites a conhecer
- A restauração direta numa caixa de correio ou no OneDrive ainda não existe (planejada; vai gravar só numa pasta nova, sem nunca sobrescrever). Por enquanto você baixa ou restaura numa pasta.
- Não incluídos: chats e mensagens de canais do Teams, listas e páginas do SharePoint (só bibliotecas de documentos), anexos de eventos, fotos de contatos, ocorrências alteradas isoladamente de uma série e caixas compartilhadas sem conta de usuário.
- Os horários dos eventos são gravados em UTC.
Solução de problemas
- AADSTS7000215 / invalid client secret: foi copiado o ID do segredo em vez do Value, ou o segredo expirou — crie um novo e informe-o na tarefa.
- Missing application permissions / Authorization_RequestDenied: adicione as permissões como permissões de aplicativo e clique em Grant admin consent.
- The account has no Exchange Online mailbox: a conta não tem licença do Exchange (ou é um contato); remova-a da tarefa.
- Uma execução com avisos lista mensagens ou arquivos que não puderam ser lidos (p. ex. um bloco de anotações do OneNote); o restante do backup está completo.
Próximos passos
Baixe o BackupZit, veja todos os recursos para Microsoft 365 ou leia o capítulo do Microsoft 365 no guia integrado ao console. O mesmo console também faz backup de servidores e máquinas virtuais — veja os guias de Proxmox VE e Hyper-V. Perguntas são bem-vindas nas GitHub Discussions. Empresas podem contratar suporte comercial da MaxZit (somente em inglês).