Vai al contenuto
Avanet

Synchronized Application Control: verificare il database in sicurezza

Se Synchronized Application Control non rileva più nuove applicazioni, heartbeatd.log segnala errori oppure un firewall dispone di pochissimo spazio dopo un aggiornamento, il database interno delle applicazioni potrebbe essere interessato. Non è però un caso da affrontare con comandi PostgreSQL generici trovati in un forum o in una vecchia nota di supporto.

Sophos Firewall gestisce questi dati internamente. Da SFOS 20.0 MR1 limita le occorrenze per applicazione ed endpoint; SFOS 21.0 e versioni successive offrono anche una pulizia configurabile in base all’età. Questo articolo spiega come impostare la normale conservazione, circoscrivere un problema in sicurezza e accompagnare in modo controllato un eventuale intervento del supporto.

Inquadrare correttamente il problema

Synchronized Application Control utilizza le informazioni degli endpoint collegati al firewall tramite Security Heartbeat. In questo modo, il firewall identifica applicazioni che le firme tradizionali non riescono ad associare con certezza e le rende disponibili per la gestione in Applications > Synchronized Application Control.

Questi concetti non devono essere confusi:

  • Security Heartbeat trasmette lo stato di integrità e sicurezza tra endpoint, firewall e Sophos Fusion (in precedenza Sophos Central).
  • Synchronized Application Control rileva le applicazioni e le relative occorrenze sugli endpoint collegati.
  • Missing heartbeat descrive l’assenza dello stato di un endpoint e può essere gestito tramite comandi supportati della Device Console.
  • Un problema di App ID o del database riguarda l’archiviazione interna delle applicazioni rilevate e richiede una diagnosi specifica.

L’assenza dell’indicazione Heartbeat, un endpoint rosso o una regola firewall non corrispondente non indicano quindi automaticamente un errore del database. Per verificare il collegamento tra firewall e Sophos Fusion, consultare innanzitutto Collegare Sophos Firewall a Sophos Fusion.

Comprendere conservazione e pulizia

Per Synchronized Application Control valgono due importanti regole del prodotto:

  • Synchronized Application Control supporta fino a 15'000 applicazioni.
  • A partire da SFOS 20.0 MR1, il firewall conserva solo le ultime cinque occorrenze di ogni applicazione per endpoint.

Durante la migrazione a SFOS 20.0 MR1 o versioni successive, il firewall conserva le cinque occorrenze più recenti e rimuove automaticamente i dati delle occorrenze meno recenti. Sophos avverte tuttavia che questa pulizia di migrazione può non riuscire se lo spazio libero è insufficiente. In questo caso occorre coinvolgere Sophos Support.

Separatamente, SFOS può eliminare le applicazioni la cui ultima rilevazione è precedente al periodo di conservazione configurato. Il firewall esegue un controllo giornaliero ed elimina gruppi di 100 applicazioni ogni cinque minuti. Anche le applicazioni aggiunte singolarmente agli Application Filters vengono rimosse da tali filtri.

Durante la migrazione a SFOS 21.0 o versione successiva, con Synchronized Application Control attivo, Clean up application database viene attivato con il periodo predefinito di 12 mesi. Un periodo personalizzato in precedenza viene mantenuto. Disattivando Synchronized Application Control si disattiva anche la pulizia.

La distinzione è importante: la conservazione in base all’età si configura nell’interfaccia. La manutenzione diretta del database rimane esclusa dalle normali attività amministrative.

Configurare la pulizia ordinaria

Il firewall deve essere registrato in Sophos Fusion e disporre di una sottoscrizione Web Protection valida. Senza questa sottoscrizione è possibile configurare Synchronized Application Control, ma non utilizzarlo. Inoltre, il dominio creato sul firewall deve corrispondere a quello selezionato sull’endpoint.

  1. Aprire System > Sophos Fusion e verificare che il firewall sia registrato e che Synchronized Application Control sia attivo.
  2. Attivare Clean up application database.
  3. Scegliere il periodo di conservazione. 12 mesi è il valore predefinito dopo la migrazione e un punto di partenza ragionevole in assenza di una policy specifica. Un periodo più breve riduce prima le voci obsolete, ma rimuove anche prima dagli Application Filters le applicazioni assegnate singolarmente.
  4. Salvare l’impostazione e monitorare l’inventario durante i successivi cicli giornalieri.

La pulizia è volutamente graduale. Un numero invariato subito dopo il salvataggio non indica quindi un errore. Per la verifica, confrontare il momento di rilevazione visibile più antico e il numero di applicazioni obsolete prima e dopo almeno un ciclo giornaliero; le nuove applicazioni devono continuare a comparire.

⚠️ Disattivare la pulizia interrompe le eliminazioni future, ma non ripristina applicazioni o assegnazioni ai filtri già rimosse. Un’applicazione rilevata ricompare nell’elenco, ma deve essere aggiunta nuovamente a un Application Filter se necessario.

Distinguere i sintomi tipici

Problema di spazio dopo un aggiornamento o una pulizia

Possibili indizi sono una partizione quasi piena, problemi con report o servizi e una correlazione temporale con un aggiornamento o con una pulizia in base all’età che non avanza. Questi elementi, da soli, non dimostrano ancora che la causa sia Synchronized Application Control.

Occorre prima controllare report, log di debug, archivi di supporto, coda e-mail, quarantena e dimensione del disco virtuale. La procedura è descritta in Verificare lo spazio su Sophos Firewall e gestire i report.

Intervallo App ID esaurito

Un altro sintomo è un messaggio come il seguente:

Cannot create ID for application, because appId range is exhausted.
Application will be ignored.

In questo caso, il firewall può continuare a mostrare le applicazioni esistenti, ma non riesce più a rilevarne correttamente di nuove. Il messaggio riguarda Synchronized Application Control, non un database generico di report o log.

Un elenco vicino al limite di prodotto di 15'000 applicazioni indica un problema di capacità di Synchronized Application Control. Una partizione piena rappresenta invece un problema di spazio distinto. I due sintomi possono verificarsi contemporaneamente, ma nessuno dimostra la causa dell’altro e devono essere analizzati separatamente.

Security Heartbeat non funziona

Se gli endpoint non segnalano lo stato Heartbeat oppure le regole con condizioni Heartbeat non si comportano come previsto, occorre verificare prima la registrazione in Sophos Fusion, la comunicazione degli endpoint, le zone interessate e la regola firewall. La pulizia diretta del database non è l’approccio corretto per questo problema.

Diagnosi prima di aprire il caso di supporto

1. Documentare firmware e contesto

Le note del caso devono includere:

  • modello del firewall, numero di serie e versione SFOS completa, inclusa la build
  • Standalone, HA Primary o HA Auxiliary
  • data dell’ultimo aggiornamento e versione SFOS precedente
  • momento a partire dal quale il problema è visibile
  • servizi interessati e impatto concreto

In ambiente HA deve essere chiaro su quale Node si manifesta il sintomo. I log locali e l’occupazione dello spazio possono differire tra Primary e Auxiliary.

2. Controllare la vista delle applicazioni

In Applications > Synchronized Application Control, verificare:

  • Le nuove applicazioni vengono ancora rilevate?
  • L’elenco è vicino al limite di 15'000 applicazioni?
  • Il problema riguarda solo le nuove applicazioni o anche le voci esistenti?
  • È possibile cercare, aprire e gestire le applicazioni?
  • Le applicazioni eliminate vengono ricreate come previsto dopo un nuovo rilevamento?

L’eliminazione di singole applicazioni dall’interfaccia è una funzione supportata, ma le rimuove anche dagli Application Filters. Se il firewall rileva nuovamente l’applicazione, questa ricompare. Questa funzione dell’interfaccia non costituisce quindi una riparazione del database.

3. Verificare separatamente lo spazio disponibile

L’occupazione dello spazio deve essere documentata prima di qualsiasi altra misura. È importante registrare la partizione interessata e l’andamento nel tempo, non soltanto un singolo valore percentuale.

Se contemporaneamente vengono eliminati report, log o archivi di supporto, in seguito non sarà più possibile stabilire quale intervento abbia realmente risolto il problema. Occorre quindi prima raccogliere le prove e poi apportare una sola modifica alla volta.

4. Salvare log e Troubleshooting Report

Per Synchronized Application Control e Security Heartbeat è particolarmente rilevante heartbeatd.log. Occorre inoltre registrare l’ora esatta dell’errore e salvare un Troubleshooting Report.

I file appropriati e le modalità di raccolta sono descritti in Risoluzione dei problemi di Sophos Firewall: servizi e log e Salvare i log di Sophos Firewall per un’analisi esterna.

Non utilizzare comandi di database pubblici

Su Internet circolano diversi comandi psql, DELETE, VACUUM FULL e di riavvio dei servizi destinati a vecchie versioni SFOS e a differenti problemi di Heartbeat. Queste procedure non sono intercambiabili:

  • Un VACUUM FULL libera spazio in una tabella, ma non elimina automaticamente la causa della sua crescita.
  • Un DELETE può modificare le associazioni di applicazioni, endpoint o utenti autenticati attivamente.
  • Le tabelle e le procedure di supporto possono variare tra le versioni SFOS.
  • In HA, la procedura dipende inoltre dal Node, dallo stato di sincronizzazione e dalle istruzioni del supporto.

⚠️ Senza istruzioni attuali e specifiche per il caso fornite da Sophos Support, non devono essere apportate modifiche dirette al database PostgreSQL interno. Un backup della configurazione è importante, ma non consente un rollback completo del database interno.

Anche i comandi provenienti da un ticket precedente non devono essere applicati senza verifica a un firewall, firmware o ruolo HA diverso. Le istruzioni esatte devono essere riportate nel caso di supporto attuale e indicare il Node interessato e l’effetto previsto.

Preparare completamente il caso di supporto

Un caso ben preparato accelera l’analisi ed evita ulteriori richieste. È opportuno allegare:

  • versione SFOS completa e modello del firewall
  • numero di serie e ruolo HA del Node interessato
  • ora e testo esatto del messaggio di errore
  • screenshot di Applications > Synchronized Application Control
  • occupazione dello spazio prima di qualsiasi intervento di pulizia
  • heartbeatd.log e Troubleshooting Report relativi al periodo appropriato
  • data e percorso dell’ultimo aggiornamento firmware
  • descrizione che specifichi se mancano nuove applicazioni, se lo spazio è insufficiente o se si verificano entrambe le condizioni

Prima di un intervento del supporto deve essere disponibile un backup aggiornato della configurazione del firewall. La procedura per aprire il caso è descritta in Aprire un ticket di supporto Sophos.

Se il supporto ordina un intervento sul database, nel Change devono essere documentati il numero del ticket, i comandi approvati, il Node di destinazione, la finestra di manutenzione, l’output previsto e i criteri di interruzione. Eventuali messaggi di errore diversi devono essere documentati e comunicati, anziché proseguire sperimentando comandi simili.

Verifiche dopo l’intervento del supporto

Dopo l’intervento approvato, non è sufficiente controllare lo spazio libero o la corretta esecuzione di un comando. Occorre verificare l’intero flusso funzionale:

  1. Aprire Applications > Synchronized Application Control e controllare le voci esistenti.
  2. Avviare su un endpoint di test una nuova applicazione mai rilevata in precedenza.
  3. Verificare che la nuova applicazione compaia e possa essere gestita.
  4. Controllare lo stato Security Heartbeat dell’endpoint di test.
  5. Testare le regole firewall con condizioni Heartbeat o Application Control.
  6. Controllare heartbeatd.log per individuare nuovi errori durante il periodo di test.
  7. Monitorare l’occupazione dello spazio per diverse ore o giorni.

Se l’errore o la crescita si ripresentano rapidamente, la pulizia ha fornito solo un sollievo temporaneo. Sophos Support avrà quindi bisogno del nuovo andamento temporale, dei log aggiornati e dell’informazione relativa all’azione dopo la quale il problema si è ripresentato.

FAQ

È necessario pulire regolarmente il database di Synchronized Application Control?

Sì, ma solo tramite Clean up application database in System > Sophos Fusion. Da SFOS 21.0, dopo la migrazione questa pulizia supportata è impostata per default su 12 mesi se Synchronized Application Control è attivo. La manutenzione diretta di PostgreSQL resta un’attività del supporto.

Cosa significa appId range is exhausted?

Il firewall non riesce a creare un nuovo ID interno per un’applicazione rilevata e la ignora. Il problema riguarda Synchronized Application Control e deve essere verificato tramite la vista delle applicazioni, heartbeatd.log, la versione firmware e il supporto.

È possibile utilizzare vecchi comandi psql provenienti dalla Sophos Community?

Non senza un’approvazione attuale di Sophos Support. I comandi pubblici possono essere destinati a una versione SFOS, a un problema o a un HA Node differenti e possono modificare le associazioni di applicazioni, endpoint o utenti.

Un backup della configurazione è sufficiente come possibilità di ripristino?

No. Un backup della configurazione è importante prima degli interventi di manutenzione, ma non offre un rollback completo per le modifiche dirette al database PostgreSQL interno. La procedura di ripristino deve quindi fare parte delle istruzioni del supporto.