Home

Vereda Tecnologia

Configurando backups (estação de trabalho)

Por Fernanda Queiroz

| 4 minutes read

Propósito

Configurar o programa de backup para replicar dados para nuvem e aplicar proteção contra ransomware.

Este procedimento satisfaz a regra de ouro 3-2-1-1-0 e protege os dados do usuário contra ameaças:

  1. Falha humana (esquecimento, descuido, desconhecimento, etc)
  2. Roubo e/ou furto
  3. Falha de mídia (física e/ou lógica)
  4. Catástrofe local (incêndio, inundação, etc)
  5. Malware (ransomware)

Validar o procedimento pressupõe sucesso em:

Contexto

Softwares e fornecedores utilizados:

Depois de configurado, o Vorta executa na área de trabalho em segundo plano e, no horário agendado, inicia a rotina de backup. Em caso de sucesso, o script de pós-backup é executado também.

A rotina de backup é operada pelo Borg, que salva uma versão de todos os arquivos selecionados dentro do repositório local (no mesmo sistema de arquivos)

O script de pós-backup sincroniza o repositório local com a nuvem, aumenta a validade da proteção contra ransomware e por fim envia uma notificação com o resultado da execução.

Passo-a-passo

Em um sistema Debian stable, instale os programas abaixo:

apt install vorta borg rclone backblaze-b2 curl python3

Apenas para referência, abaixo está a versão específica dos softwares:

Nota: O procedimento foi validado com o sistema operacional e softwares mencionados acima, mas esse procedimento provavelmente funciona em qualquer sistema linux ou demais sistemas suportados pelo Borg Backup.

Vorta Profile

Execute o programa Vorta e crie seu repositório local. Esta página tem um guia de 5 minutos para fazê-lo a partir do passo 2: Setting up Vorta for Local Backups

Após configurar o repositório, ajuste as demais configurações do seu perfil como a seguir:

Schedule tab/Schedule

🔘 Backup every 1 hours at 17 minutes past the hour

✅ Validate repository data every 1 weeks

✅ Prune old Archives after each backup

Nota: A configuração acima é exemplificativa. Caso queira, pode alterar os números em negrito.

Schedule tab/Shell Commands

Pre-backup command to run BEFORE backups: test -x /home/user/.local/share/Vorta/post-backup_init

Post-backup command to run AFTER backups: /home/user/.local/share/Vorta/post-backup_init 2>&1 | tee -a /home/user/.cache/Vorta/log/vorta.log

Nota: substitua a palavra user nos comandos acima pelo nome do seu usuário.

Dica: em um terminal, execute echo $LOGNAME para conferir o nome do seu usuário.

Arguments to add: --umask 0022 --noatime

Archives tab/Prune Options and Archive Naming

Prune Options: Keep 6 hourly, 3 daily, 4 weekly, 2 monthly and 0 annual archives. No matter what, keep all archives of the last 2H.

Archive Name: {profile_slug}-{now:%Y-%m-%d-%H%M}

Prune Prefix: {profile_slug}-

Nota: A configuração acima é exemplificativa. Caso queira, pode alterar os números em negrito.

Instalar scripts personalizados

Junto com este documento encontram-se os arquivos post-backup_init e post-backup_renew-lock.py. Copie-os para o caminho /home/user/.local/share/Vorta/

Após a cópia, aplique permissões de execução no arquivo post-backup_init, como abaixo:

chmod +x /home/$LOGNAME/.local/share/Vorta/post-backup_init

Nota: A pasta .local é oculta por padrão. Caso necessário, habilite a visualização de arquivos ocultos no seu gerenciador de arquivos.

Obter token válido na backblaze

Primeiro, crie um bucket exclusivo para os backups deste dispositivo. Escolha um nome globalmente único, de preferência seguindo alguma padronização interna (tal como nomedaempresa-hostname-backups).

Lembre-se de habilitar a opção de trava de objetos! Como não pretendo compartilhar esses arquivos com ninguém fora da minha organização e eu sempre aplico criptografia no lado do cliente, mantive essas opções no padrão. As opções de criação do bucket ficaram assim:

Files in Bucket are: Private

Default Encryption: Disable

Object Lock: Enable

Após criado, ajuste o ciclo de vida dos objetos para remover automaticamente versões antigas.

Lifecycle Settings: Keep only the last version of the file

Segundo, criar uma nova application key com acesso restrito ao bucket criado acima. Habilitar leitura e escrita.

As credenciais do token serão exibidas na tela. Salve-as em algum lugar seguro pra uso futuro, ou aproveite agora para configurar o rclone. Recomendo usar a documentação oficial.

Receber notificações no celular (opcional)

Essa é a parte mais legal na minha opinião. Se você fez tudo certinho até aqui, o seu sistema já está gerando notificações ao término de cada backup, seja ele bem sucedido ou não. Para acompanhar essas notificações no seu celular, usei um serviço chamado ntfy.sh.

Baixe o aplicativo pelo F-droid (ou pela fonte de sua preferência) e cadastre o acompanhamento do tópico com o nome igualzinho aparece no seu aquivo de configuração do rclone. Como aqui usei o padrão nomedaempresa-hostname-backup, fica fácil acertar o nome do tópico para acompanhar.

Você pode visualizar suas configurações do rclone com o comando:

rclone config show

O nome da configuração usada deve aparecer entre colchetes.