Limpar a base de dados Secure Heartbeat no Sophos Firewall em caso de suporte
Este procedimento não é uma dica geral de otimização para o Sophos Firewall. Ele descreve um caso de suporte restrito: o firewall tem pouco espaço livre e o suporte da Sophos confirma que certas tabelas relacionadas ao Secure Heartbeat na base de dados corporate tornaram-se anormalmente grandes.
Neste caso, uma manutenção direcionada com VACUUM FULL pode recuperar espaço. Como isso envolve acesso direto à base de dados interna PostgreSQL do firewall, o procedimento deve ser realizado apenas após confirmação atual pelo suporte da Sophos e durante uma janela de manutenção.
Quando este guia é relevante
O procedimento é relevante quando o espaço de armazenamento no Sophos Firewall está escasso e há suspeita de que as tabelas da base de dados relacionadas ao Secure Heartbeat estão ocupando espaço excessivo.
Indicações típicas podem incluir:
- Alertas de alto consumo de armazenamento
- Partições fortemente ocupadas no firewall
- Problemas com relatórios, logs ou serviços devido à capacidade limitada do disco
- Uma indicação do suporte da Sophos de que a base de dados Secure Heartbeat tornou-se muito grande
Se não estiver claro por que o disco está cheio, deve-se primeiro realizar a análise geral de Verificar espaço de armazenamento e gerenciar relatórios no Sophos Firewall. Esta manutenção da base de dados só é útil quando relatórios, logs, fila de e-mails, quarentena, tamanho do disco virtual e outras causas óbvias não explicam o problema ou o suporte da Sophos menciona explicitamente o caminho da base de dados.
Pré-requisitos
Para esta manutenção, é necessário:
- Acesso administrativo ao Sophos Firewall
- Acesso ao Advanced Shell
- Uma recomendação ou confirmação específica do suporte da Sophos
- Uma janela de manutenção
- Um backup de configuração do firewall atualizado
- Logs salvos, caso o caso precise ser analisado posteriormente
- Espaço livre suficiente para que a manutenção da base de dados possa ser concluída
Se o acesso ao Shell ainda não estiver configurado, o guia Conectar ao Sophos Firewall via SSH explica como estabelecer uma conexão SSH com o firewall. Se um caso de suporte estiver sendo preparado, também são úteis Salvar logs do Sophos Firewall para análise externa e Abrir um ticket de suporte na Sophos.
⚠️ Estes comandos acessam diretamente a base de dados interna PostgreSQL do Sophos Firewall. A execução deve ser feita apenas de forma direcionada e após confirmação atual pelo suporte da Sophos para o caso específico de suporte.
VACUUM FULLpode bloquear tabelas durante a execução e, dependendo do tamanho da base de dados, pode demorar algum tempo.
Quando não executar os comandos
Os comandos não devem ser executados se houver apenas um alerta geral de armazenamento e a causa ainda não tiver sido identificada. Frequentemente, problemas de armazenamento são causados por relatórios, logs de depuração, arquivos de suporte, proteção de e-mail, quarentena, disco virtual pequeno ou retenção geral de logs.
Sinais claros para parar são:
- O suporte da Sophos não confirmou especificamente as duas tabelas: Nesse caso, a intervenção na base de dados seria apenas uma suposição e não autorizada para o caso específico.
- Não há backup atual ou janela de manutenção: Em caso de erro, falta um caminho de retorno seguro ou o impacto afeta a operação em andamento.
- SSH ou Advanced Shell é instável: Um comando de base de dados interrompido dificulta a análise posterior.
- Papel HA, número de série ou nó afetado não está claro: O comando pode ser ineficaz no dispositivo errado ou distorcer o diagnóstico.
- Relatórios, logs ou arquivos de suporte estão sendo excluídos em paralelo: Depois, não está claro qual ação liberou espaço de armazenamento.
- O firewall já está perdendo serviços críticos: Nesse caso, o estado atual deve ser salvo e avaliado com o suporte da Sophos primeiro.
O procedimento também não é adequado como manutenção regular, cronjob ou limpeza preventiva. Se as tabelas voltarem a crescer rapidamente, isso é um sintoma, não um estado normal de operação. Nesse caso, o caso de suporte deve ser continuado com logs atualizados, saídas de disco e evolução temporal.
Aprovação do suporte e critérios de interrupção
Antes da execução, não deve haver apenas um backup disponível. Deve estar claro quem autorizou o passo, qual problema está sendo tratado e quando o procedimento será interrompido.
Informações mínimas úteis:
- Aprovação do suporte: Número do ticket, contato e recomendação específica.
- Firewall afetado: Número de série, modelo, versão do firmware, papel HA.
- Problema: Alerta de armazenamento, partição afetada, serviços afetados.
- Hora de início: Momento antes do primeiro comando.
- Valores anteriores: Saída de
df -h,df -hkmesystem diagnostics show disk. - Critério de interrupção: Mensagem de erro, tempo de execução anormalmente longo, sessão SSH instável ou novos erros de sistema.
Se a conexão SSH for instável, o firewall já estiver perdendo serviços críticos ou o suporte da Sophos não tiver confirmado especificamente as tabelas, não se deve experimentar com comandos de base de dados. Nesses casos, saídas de disco atuais, logs e um caso de suporte bem estruturado são mais valiosos do que uma tentativa de manutenção parcialmente executada.
Verificar espaço de armazenamento antes da manutenção
Antes da manutenção da base de dados, deve-se verificar o quanto as partições estão ocupadas:
df -h
Para uma exibição mais detalhada em megabytes, também pode ser usado o seguinte comando:
df -hkm
A saída deve ser documentada antes da manutenção para que se possa comparar posteriormente se o espaço de armazenamento foi liberado. Além disso, o status específico do disco da Sophos na Device Console é útil:
system diagnostics show disk
Em clusters HA, ambos os nós devem ser verificados separadamente. Bases de dados locais, logs e espaço livre podem diferir entre o Primary e o Auxiliary.
Antes da manutenção, também deve estar claro se outras causas estão ocupando espaço em paralelo. Isso inclui arquivos de suporte antigos, grandes bases de dados de relatórios, fila de e-mails, quarentena, logs de depuração ou arquivos armazenados manualmente. Se esses pontos não foram verificados, a base de dados Secure Heartbeat é apenas uma suposição.
Executar a manutenção da base de dados
Os seguintes comandos são executados no Advanced Shell. Durante a execução, a sessão SSH deve permanecer estável. O firewall não deve ser reiniciado enquanto um comando estiver em execução.
Primeiro, a tabela tbleacappcache é limpa:
psql -U pgroot -d corporate -c "VACUUM FULL tbleacappcache"
Em seguida, a tabela tblappstoeps é limpa:
psql -U pgroot -d corporate -c "VACUUM FULL tblappstoeps"
Os comandos geralmente retornam VACUUM após a execução bem-sucedida. Se um comando gerar uma mensagem de erro ou demorar anormalmente, não se deve continuar com outros comandos experimentais de base de dados. Nesse caso, a saída, o momento e o status atual do disco são relevantes para o suporte da Sophos.
Durante a execução, nenhuma outra pessoa deve limpar espaço de armazenamento, relatórios ou arquivos de base de dados em paralelo. Caso contrário, não ficará claro posteriormente qual ação teve qual efeito. Em firewalls produtivos, uma breve entrada de mudança com hora de início, comando e resultado é útil.
Verificar espaço de armazenamento após a manutenção
Após a conclusão dos comandos, o espaço de armazenamento deve ser verificado novamente:
df -h
Se a base de dados Secure Heartbeat realmente foi a causa, a ocupação da partição afetada deve ser reduzida. O impacto depende de quão grandes as tabelas eram antes e quantos dados o PostgreSQL conseguiu liberar.
Após a manutenção, deve-se verificar adicionalmente:
system diagnostics show diskmostra valores plausíveis novamente?- O Log Viewer, relatórios e serviços afetados estão novamente utilizáveis?
- Existem novos erros nos Serviços e Logs relevantes?
- O consumo de armazenamento volta a crescer rapidamente nas próximas horas ou dias?
- Os passos executados estão documentados no ticket ou mudança?
Para o controle posterior, uma única comparação bem-sucedida de df -h nem sempre é suficiente. Se a partição for aliviada apenas por um curto período e depois voltar a encher rapidamente, a manutenção não é uma conclusão, mas uma indicação de diagnóstico. Nesse caso, a evolução temporal com saídas de disco atualizadas, período de logs e serviços afetados deve ser enviada de volta ao suporte da Sophos.
Avisos importantes
- Esta manutenção não corrige automaticamente a causa do crescimento das tabelas.
- Se o espaço de armazenamento voltar a aumentar rapidamente, um caso de suporte da Sophos deve ser aberto.
VACUUM FULLé mais intensivo do que umVACUUMnormal, pois as tabelas são reescritas.- Os comandos não devem ser usados como cronjob regular ou rotina sem diagnóstico.
- Em firewalls produtivos, recomenda-se uma janela de manutenção, pois funções individuais podem reagir com atraso durante a manutenção da base de dados.
- Em clusters HA, deve estar claro em qual nó a manutenção é necessária.
- Antes de outros comandos de base de dados, o suporte da Sophos deve ser novamente envolvido.
Erros comuns
Executar comandos sem diagnóstico
Uma partição cheia não significa automaticamente que o Secure Heartbeat é a causa. Antes dos comandos de base de dados, devem ser verificadas saídas de disco, logs e consumidores de armazenamento óbvios.
Não planejar uma janela de manutenção
VACUUM FULL pode demorar dependendo do tamanho da tabela e bloquear tabelas. Em firewalls produtivos, o passo não deve ser executado durante uma fase crítica de operação.
Não continuar a monitorar após a limpeza
Se o espaço de armazenamento for liberado apenas por um curto período e depois voltar a crescer rapidamente, a causa não foi resolvida. Nesse caso, é necessária uma análise adicional com o suporte da Sophos.
Confundir o nó HA
Em ambientes HA, a situação de armazenamento local por nó pode ser diferente. Portanto, antes de cada comando, deve estar claro se está a trabalhar no Primary ou no Auxiliary e qual número de série está afetado. Um comando no nó errado pode ser ineficaz e dificultar a análise posterior desnecessariamente.
Contextualização do caso
No caso específico de suporte, a causa foi uma base de dados Secure Heartbeat muito grande. Os dois comandos VACUUM FULL mencionados servem para limpar especificamente as tabelas afetadas e liberar espaço de armazenamento não mais necessário. No entanto, não se deve derivar uma manutenção geral da base de dados para o Sophos Firewall a partir disso.
O artigo trata apenas deste caso restrito de espaço de armazenamento. Se o Security Heartbeat não funcionar, os endpoints não reportarem o status do Heartbeat, a sincronização com o Central falhar ou as regras de firewall com condições de Heartbeat não funcionarem como esperado, isso é um problema diferente. Nesse caso, a conexão com o Sophos Central, o status do endpoint, a regra de firewall, o Log Viewer e os logs de serviço relevantes são mais importantes do que uma intervenção direta na base de dados.
Para problemas gerais de armazenamento, o primeiro passo continua a ser a verificação sistemática de espaço de armazenamento, logs, relatórios e dados de suporte. Para a operação em torno do Sophos Central, também é adequado Conectar o Sophos Firewall ao Sophos Central, para arquivos de log Solução de problemas do Sophos Firewall: Serviços e Logs.
FAQ
Deve-se limpar regularmente a base de dados Secure Heartbeat?
Um alerta de armazenamento é suficiente como motivo para estes comandos?
O que deve ser salvo antes do VACUUM FULL?
df -h e system diagnostics show disk, número do ticket, número de série, versão do firmware e papel HA.