Tudo o que quer saber antes de instalar.
Uma análise detalhada de como o Extensão de Cópias de Segurança Shopware 6: DfBackup SW, base de dados e ficheiros, cifra AES-256, S3/FTP/Dropbox, restauro num clique funciona, porque o construímos assim e o raciocínio por trás das funcionalidades acima.
Uma verdadeira cópia de segurança Shopware, não um script improvisado
A maioria das soluções de cópia de segurança para Shopware limita-se a chamar o mysqldump e a comprimir a pasta, o que levanta três problemas em produção: o mysqldump não está disponível em muitos alojamentos partilhados, o shell_exec está muitas vezes desativado, e os arquivos não cifrados esquecidos no disco são uma bomba-relógio em caso de compromisso. O DfBackup SW resolve estes três pontos: cópia da base de dados em PHP puro através do DBAL, arquivamento por ZipArchive, e cifra AES-256 autenticada opcional com frase-passe do utilizador. Tudo funciona sem qualquer configuração de sistema especial, tanto em alojamento partilhado como em VPS.
Uma cópia que percebe o esquema do Shopware
Uma cópia SQL ingénua parte-se no Shopware: as chaves primárias são UUID em BINARY 16 que têm de ser emitidos em literais hexadecimais, algumas colunas são geradas (STORED ou VIRTUAL) e nunca devem aparecer nos INSERT, e as vistas têm de ser recriadas depois das tabelas. O DfBackup SW trata disto de forma nativa: inspeção com SHOW FULL COLUMNS por tabela, exclusão das colunas geradas, codificação hexadecimal das colunas binárias, paginação keyset nas chaves primárias inteiras para as tabelas grandes (order, log_entry), e cópia das vistas no fim. O ficheiro produzido reimporta-se corretamente, instrução a instrução, com FOREIGN_KEY_CHECKS desativado durante a importação.
Cifra AES-256 com HMAC: encrypt-then-MAC feito como deve ser
O padrão encrypt-then-MAC é o recomendado para esquemas simétricos: cifra-se primeiro e depois calcula-se um HMAC sobre o texto cifrado. Na leitura, verifica-se o HMAC antes de decifrar, o que protege contra ataques de bit-flip e de padding oracle. A frase-passe do utilizador passa por PBKDF2-SHA256 com 120000 iterações para derivar chaves de cifra e de HMAC separadas. A cifra é feita em streaming por blocos de 1 MiB com encadeamento CBC manual: um arquivo de 5 GB cifra-se com a mesma pegada de memória que um de 50 MB. O formato binário (cabeçalho magic, sal, IV, HMAC, texto cifrado) está documentado e é auditável.
S3 SigV4 nativo: multipart, MinIO, R2, OVH, Scaleway, Wasabi, B2
Em vez de incluir o SDK oficial da AWS, o DfBackup SW implementa diretamente a AWS Signature V4 em cURL. Zero dependências Composer adicionais, assinatura canónica compatível com todos os serviços que falam S3. Pode apontar a extensão para o Amazon S3, para o MinIO no seu próprio VPS, para o Cloudflare R2 (10 GB gratuitos, custo zero de saída, ideal para cópias de segurança), para o OVH Object Storage, o Scaleway, o Wasabi ou o Backblaze B2, mudando apenas o endpoint e a região. Acima de 100 MB, o upload passa automaticamente a multipart com partes de 10 MB, o que permite transferir vários gigabytes sem saturar a memória.
Replicação push: um staging noturno sem configuração de sistema
É a funcionalidade que distingue o DfBackup SW: empurrar cada cópia para uma segunda instalação Shopware. Instala a extensão na produção e no staging, partilha um segredo comum, e ativa a Replicação como destino. A cada cópia, manual ou agendada, o arquivo é carregado em blocos de 8 MB assinados com HMAC-SHA-256 para endpoints dedicados no destino, com data e hora antirreprodução com tolerância de 5 minutos. Se a opção de restauro automático estiver ativa no destino, a cópia é aplicada automaticamente e o seu staging reflete a produção da véspera logo na manhã seguinte. Combinado com a migração de domínio, o clone fica imediatamente navegável no seu próprio domínio. Deixa de ser preciso rsync ou scripts de cron de sistema.
Restauro num clique com rede de segurança
Um restauro é a operação mais arriscada do ciclo de vida de uma loja: apaga-se a base de dados viva, substituem-se os ficheiros, e se algo correr mal o regresso atrás é complexo. O DfBackup SW acrescenta uma rede de segurança automática: antes de cada restauro, é criado em silêncio um snapshot protegido da base de dados. Se o restauro falhar a meio, restaura esse snapshot e volta ao estado inicial em poucos minutos. As tabelas da extensão nunca são substituídas durante um restauro, pelo que o seu histórico de cópias fica preservado mesmo quando restaura uma versão de há seis meses. A confirmação explícita (escrever RESTORE) evita manobras acidentais.
Messenger, ScheduledTask e web-cron: o segundo plano à maneira do Shopware
O DfBackup SW assenta na infraestrutura nativa do Shopware: as cópias são enviadas como mensagens assíncronas do Symfony Messenger e executadas pelo worker, sem bloquear a administração nem o storefront. Uma ScheduledTask nativa verifica a cada 10 minutos se deve arrancar uma cópia agendada (diária, semanal ou mensal, hora alvo, janela de 30 minutos, desduplicação de 60 minutos). Para alojamentos sem cron de sistema nem worker permanente, um web-cron por URL assinado com token assume: chame o URL a cada 10 a 15 minutos a partir do cron-job.org ou da sua monitorização, e a porta de agendamento interna faz o resto. O módulo de administração mostra o progresso em direto com 15 marcos consultados.
Registo de auditoria, alertas e notificações: defesa em profundidade
Três mecanismos complementares para que nenhuma cópia se perca sem que alguém dê por isso. O registo de auditoria regista cada ação sensível (execução, restauro, eliminação, verificação, transferência) com o utilizador de administração, o IP e a data e hora. O alerta no módulo assinala se a última cópia bem-sucedida tem mais de N dias. As notificações seguem por email (Symfony Mailer, sucesso ou falha à escolha) e por webhook com deteção automática do formato: Slack, Discord, Microsoft Teams ou JSON genérico para as suas integrações à medida.
Ainda não existem avaliações.