Ciao colleghi! Oggi vorrei discutere un argomento molto rilevante per molti amministratori di Check Point, "Ottimizzazione CPU e RAM". Non è raro che un gateway e/o un server di gestione consumino inaspettatamente molte di queste risorse, e si vorrebbe capire dove “perdono” e, se possibile, utilizzarle in modo più competente.
1. Analisi
Per analizzare il carico del processore, è utile utilizzare i seguenti comandi, che vengono inseriti in modalità esperto:
top mostra tutti i processi, la quantità di risorse CPU e RAM consumate in percentuale, tempo di attività, priorità del processo e
elenco cpwd_admin Check Point WatchDog Daemon, che mostra tutti i moduli dell'appline, il loro PID, lo stato e il numero di esecuzioni
cpstat -f sistema operativo della CPU Utilizzo della CPU, loro numero e distribuzione del tempo del processore in percentuale
cpstat -f memoria sistema operativo utilizzo della RAM virtuale, quanta RAM attiva, libera e altro
L'osservazione corretta è che tutti i comandi cpstat possono essere visualizzati utilizzando l'utilità cpview. Per fare ciò, devi solo inserire il comando cpview da qualsiasi modalità nella sessione SSH.
ps auxwf un lungo elenco di tutti i processi, il loro ID, la memoria virtuale occupata e la memoria in RAM, CPU
Un'altra variazione del comando:
ps-aF mostra il processo più costoso
fw ctl affinità -l -a distribuzione di core per diverse istanze del firewall, ovvero la tecnologia CoreXL
fw ctl pstat Analisi RAM e indicatori generali di connessioni, cookie, NAT
libero -m Memoria RAM
La squadra merita un'attenzione speciale. netsat e le sue varianti. Per esempio, netstat -i può aiutare a risolvere il problema del monitoraggio degli appunti. Il parametro, RX ha abbandonato i pacchetti (RX-DRP) nell'output di questo comando tende a crescere da solo a causa di cadute di protocolli illegittimi (IPv6, tag VLAN errati/non intenzionali e altri). Tuttavia, se le gocce si verificano per un altro motivo, dovresti usare questo
Se il pannello Monitoraggio è abilitato, è possibile visualizzare graficamente queste metriche nella SmartConsole facendo clic su un oggetto e selezionando Informazioni su dispositivo e licenza.
Non è consigliabile abilitare il pannello di monitoraggio su base continuativa, ma è del tutto possibile per un giorno per un test.
Inoltre, puoi aggiungere più parametri per il monitoraggio, uno di questi è molto utile: Bytes Throughput (larghezza di banda dell'appline).
Se esiste un altro sistema di monitoraggio, ad esempio, gratuito
2. La RAM "perde" nel tempo
Spesso sorge la domanda che nel tempo il gateway o il server di gestione inizia a consumare sempre più RAM. Voglio rassicurarti: questa è una storia normale per sistemi simili a Linux.
Guardando l'output del comando libero -m и cpstat -f memoria sistema operativo sull'appline dalla modalità esperto è possibile calcolare e visualizzare tutti i parametri relativi alla RAM.
In base alla memoria disponibile sul gateway al momento Memoria libera + Memoria Buffer + Memoria cache = +-1.5GB, Generalmente.
Come afferma CP, nel tempo il gateway/server di gestione viene ottimizzato e utilizza sempre più memoria, fino a circa l'80% di utilizzo e si interrompe. È possibile riavviare il dispositivo e quindi l'indicatore verrà ripristinato. 1.5 GB di RAM libera sono sicuramente sufficienti affinché il gateway esegua tutte le attività e la gestione raramente raggiunge tali valori di soglia.
Inoltre, l'output dei comandi menzionati mostrerà quanto hai Poca memoria (RAM nello spazio utente) e Alta memoria (RAM nello spazio del kernel) utilizzato.
I processi del kernel (inclusi i moduli attivi come i moduli del kernel Check Point) utilizzano solo memoria insufficiente. Tuttavia, i processi utente possono utilizzare sia la memoria bassa che quella alta. Inoltre, Memoria insufficiente è approssimativamente uguale a memoria intero.
Dovresti preoccuparti solo se ci sono errori nei log "i moduli si riavviano o i processi vengono interrotti per recuperare memoria a causa di OOM (Memoria esaurita)". Quindi dovresti riavviare il gateway e contattare l'assistenza se il riavvio non aiuta.
Una descrizione completa può essere trovata in
3. Ottimizzazione
Di seguito sono riportate domande e risposte sull'ottimizzazione di CPU e RAM. Dovresti rispondere onestamente a te stesso e ascoltare le raccomandazioni.
3.1. L'upline è stato scelto correttamente? C'era un progetto pilota?
Nonostante il dimensionamento competente, la rete potrebbe semplicemente crescere e questa apparecchiatura semplicemente non è in grado di far fronte al carico. La seconda opzione, se non ci fosse il dimensionamento in quanto tale.
3.2. L'ispezione HTTPS è abilitata? In caso affermativo, la tecnologia è configurata secondo la Best Practice?
Fare riferimento a
L'ordine delle regole nel criterio di ispezione HTTPS svolge un ruolo importante nell'ottimizzazione dell'apertura dei siti HTTPS.
Ordine consigliato delle regole:
- Aggira le regole con categorie/URL
- ispezionare le regole con categorie/URL
- Controlla le regole per tutte le altre categorie
Per analogia con la politica del firewall, Check Point cerca una corrispondenza del pacchetto dall'alto verso il basso, quindi le regole di bypass sono meglio posizionate in alto, poiché il gateway non sprecherà risorse nell'eseguire tutte le regole se questo pacchetto deve essere saltato.
3.3 Vengono utilizzati oggetti intervallo di indirizzi?
Gli oggetti con un intervallo di indirizzi, come la rete 192.168.0.0-192.168.5.0, consumano molta più RAM rispetto a 5 oggetti di rete. In generale, è buona norma eliminare gli oggetti inutilizzati nella SmartConsole, poiché ogni volta che viene impostata una policy, il gateway e il server di gestione spendono risorse e, soprattutto, tempo per verificare e applicare la policy.
3.4. Come è configurato il criterio di prevenzione delle minacce?
Prima di tutto, Check Point consiglia di spostare l'IPS su un profilo separato e di creare regole separate per questo blade.
Ad esempio, un amministratore pensa che un segmento DMZ debba essere protetto solo con IPS. Pertanto, affinché il gateway non sprechi risorse nell'elaborazione dei pacchetti da parte di altri blade, è necessario creare una regola specifica per questo segmento con un profilo in cui sia abilitato solo IPS.
Per quanto riguarda l'impostazione dei profili, si consiglia di configurarlo secondo le migliori pratiche in questo
3.5. Quante firme in modalità Rileva nelle impostazioni IPS?
Si consiglia di lavorare sodo sulle firme nel senso che le firme inutilizzate dovrebbero essere disabilitate (ad esempio, le firme per il funzionamento dei prodotti Adobe richiedono molta potenza di calcolo e se il cliente non dispone di tali prodotti, ha senso disabilitare firme). Quindi metti Prevent invece di Detect dove possibile, poiché il gateway spende risorse per elaborare l'intera connessione in modalità Detect, in modalità Prevent interrompe immediatamente la connessione e non spreca risorse per l'elaborazione completa del pacchetto.
3.6. Quali file vengono elaborati dai blade Threat Emulation, Threat Extraction e Anti-Virus?
Non ha senso emulare e analizzare i file di estensione che i tuoi utenti non scaricano o che consideri non necessari sulla tua rete (ad esempio, i file bat, exe possono essere facilmente bloccati utilizzando il pannello Content Awareness a livello di firewall, quindi le risorse del gateway saranno speso meno). Inoltre, nelle impostazioni di Threat Emulation, è possibile selezionare l'Ambiente (sistema operativo) per emulare le minacce nella sandbox e installare Ambiente Windows 7 quando tutti gli utenti lavorano con la decima versione, inoltre non ha senso.
3.7. Le regole del firewall e del livello di applicazione sono posizionate secondo le migliori pratiche?
Se una regola ha molti risultati (corrispondenze), si consiglia di metterli in cima e regole con un numero ridotto di risultati - in fondo. L'importante è assicurarsi che non si intersechino e non si sovrappongano. Architettura dei criteri firewall consigliata:
Spiegazione:
Prime regole: qui vengono inserite le regole con il maggior numero di corrispondenze
Regola del rumore: una regola per eliminare il traffico spurio come NetBIOS
Stealth Rule: divieto di accesso ai gateway e gestione a tutti, ad eccezione di quelle fonti specificate nelle regole di autenticazione al gateway
Le regole Clean-Up, Last e Drop sono solitamente combinate in un'unica regola per proibire tutto ciò che prima non era consentito
I dati sulle migliori pratiche sono descritti in
3.8. Quali sono le impostazioni per i servizi creati dagli amministratori?
Ad esempio, alcuni servizi TCP vengono creati su una porta specifica e ha senso deselezionare "Match for Any" nelle impostazioni avanzate del servizio. In questo caso, questo servizio rientrerà specificamente nella regola in cui appare e non parteciperà alle regole in cui Qualsiasi è presente nella colonna Servizi.
Parlando di servizi, vale la pena ricordare che a volte è necessario modificare i timeout. Questa impostazione consentirà di utilizzare le risorse del gateway in modo più intelligente, in modo da non mantenere tempi di sessione TCP/UDP extra per i protocolli che non necessitano di un timeout elevato. Ad esempio, nello screenshot qui sotto, ho modificato il timeout del servizio domain-udp da 40 secondi a 30 secondi.
3.9. Viene utilizzato SecureXL e qual è la percentuale di accelerazione?
Puoi controllare la qualità di SecureXL con i comandi principali in modalità esperto sul gateway stato fwaccel и fw accelstats -s. Successivamente, devi capire che tipo di traffico sta accelerando, quali modelli (modelli) puoi creare di più.
Per impostazione predefinita, i modelli di rilascio non sono abilitati, abilitarli avrà un effetto positivo sul funzionamento di SecureXL. Per fare ciò, vai alle impostazioni del gateway e alla scheda Ottimizzazioni:
Inoltre, quando si lavora con un cluster, per ottimizzare la CPU, è possibile disabilitare la sincronizzazione di servizi non critici, come UDP DNS, ICMP e altri. Per fare ciò, vai alle impostazioni del servizio → Avanzate → Sincronizza connessioni di Stato La sincronizzazione è abilitata sul cluster.
Tutte le best practice sono descritte in
3.10. Come si usa CoreXl?
La tecnologia CoreXL, che consente di utilizzare più CPU per le istanze del firewall (moduli firewall), aiuta sicuramente a ottimizzare le prestazioni del dispositivo. Prima squadra fw ctl affinità -l -a mostrerà le istanze del firewall utilizzate e i processori assegnati all'SND necessario (un modulo che distribuisce il traffico alle entità del firewall). Se non tutti i processori sono coinvolti, possono essere aggiunti con il comando cpconfig alla porta.
Anche una buona storia è da mettere
In conclusione, vorrei dire che queste non sono tutte le best practice per l'ottimizzazione di Check Point, ma le più popolari. Se desideri richiedere un controllo della tua politica di sicurezza o risolvere un problema di Check Point, contatta [email protected].
Grazie!
Fonte: habr.com