
Hallo collegaās! Vandaag wil ik een zeer actueel onderwerp voor veel Check Point-beheerders bespreken: āOptimalisatie van CPU en RAMā. Het komt vaak voor dat de gateway en/of het managementserver onverwacht veel van deze middelen verbruiken, en het zou nuttig zijn om te begrijpen waar ze ānaartoe gaanā en, indien mogelijk, ze efficiĆ«nter te gebruiken.
1. Analyse
Voor de analyse van de CPU-belasting zijn de volgende commandoās nuttig, die in de expert-modus moeten worden ingevoerd:
top toont alle processen, de hoeveelheid verbruikte CPU- en RAM-middelen in procenten, uptime, prioriteit van het proces en in real-timeen

cpwd_admin list Check Point WatchDog Daemon, dat alle modules van de appliance toont, hun PID, status en aantal opstartbeurten

cpstat -f cpu os gebruik van CPU, hun aantal en de verdeling van processor tijd in procenten

cpstat -f memory os gebruik van virtueel RAM, hoeveel actieve en vrije RAM er in totaal is, en andere

Een terecht opmerking is dat alle cpstat-commandoās kunnen worden bekeken met behulp van de tool cpview. Hiervoor moet je gewoon het commando cpview in een SSH-sessie van elke modus invoeren.


ps auxwf een lange lijst van alle processen, hun ID, de gebruikte virtuele geheugens en RAM-geheugen, CPU

Een andere variant van het commando:
ps -aF zal het meest veeleisende proces tonen

fw ctl affinity -l -a verdeling van kernen over verschillende firewall-instanties, dat wil zeggen de CoreXL-technologie

fw ctl pstat analyse van RAM en algemene verbindingstatistieken, cookies, NAT

free -m buffer RAM

De opdracht netsat en zijn variaties verdienen bijzondere aandacht. Bijvoorbeeld, netstat -i kan helpen bij het monitoren van de buffer. De parameter RX dropped packets (RX-DRP) in de output van dit commando stijgt doorgaans vanzelf door drops van illegitieme protocollen (IPv6, Bad / Unintended VLAN-tags en anderen). Maar als de drops om een andere reden optreden, is het de moeite waard om dit , te gebruiken om een onderzoek te starten en te begrijpen waarom dit netwerkinterface pakketten afbreekt. Wanneer je de oorzaak weet, kan de werking van de appliance ook worden geoptimaliseerd.

Als de blade Monitoring is ingeschakeld, kunnen deze gegevens grafisch worden bekeken in SmartConsole door op het object te klikken en āDevice & License Informationā te selecteren.
Het is niet aanbevolen om de blade Monitoring permanent in te schakelen, maar voor een dag voor testing is dat heel goed mogelijk.

Bovendien kunnen er meer parameters voor monitoring worden toegevoegd, een van de zeer nuttige is Bytes Throughput (doorvoersnelheid van de appliance).

Als er een ander monitoringsysteem is, bijvoorbeeld gratis, , gebaseerd op SNMP, dan is dat ook geschikt voor het opsporen van deze problemen.
2. āGeheugenā lekken na verloop van tijd
Vaak komt de vraag op, waarom een gateway of managementserver met de tijd steeds meer RAM begint te verbruiken. Ik wil geruststellen: dit is een normaal fenomeen voor Linux-achtige systemen.
Door de uitvoer van de commando's free -m en cpstat -f memory os in de appliance vanuit de expertmodus te bekijken, kun je alle parameters met betrekking tot RAM tellen en bekijken.
De beschikbare geheugen op de gateway op dit moment Vrij Geheugen + Buffers Geheugen + Gecached Geheugen = +-1.5 GB, meestal.
Zoals de SR zegt, optimaliseert de gateway/managementserver na verloop van tijd en gebruikt steeds meer geheugen, tot ongeveer 80% gebruik, en stopt dan. Je kunt het apparaat herstarten, en dan wordt de meting gereset. 1.5 GB vrij RAM is zeker voldoende voor het uitvoeren van alle taken, en het management komt zelden tot zulke drempelwaarden.
Ook de uitvoer van de genoemde commando's zal laten zien hoeveel jij hebt Laag geheugen (geheugen in user space) en Hoog geheugen (geheugen in kernel space) gebruikt.
Kernelprocessen (inclusief actieve modules, zoals Check Point kernel modules) gebruiken alleen Laag geheugen. Echter, gebruikersprocessen kunnen zowel Laag als Hoog geheugen gebruiken. Bovendien is Laag geheugen ongeveer gelijk aan Totaal Geheugen.
Je hoeft je alleen zorgen te maken als er fouten in de logs verschijnen āmodules reboot or processes being killed to reclaim memory due to OOM (Out of memory)ā. Dan moet je de gateway herstarten en contact opnemen met de ondersteuning als een herstart niet helpt.
Een volledige beschrijving is te vinden in en .
3. Optimalisatie
Hieronder staan vragen en antwoorden over CPU- en RAM-optimalisatie. Het is belangrijk om hier eerlijk voor jezelf op te antwoorden en naar de aanbevelingen te luisteren.
3.1. Was de appliance correct geselecteerd? Was er een proefproject?
Ondanks een goede sizing kan het netwerk simpelweg zijn gegroeid, en deze apparatuur kan de belasting niet aan. Een tweede optie is dat er geen sizing heeft plaatsgevonden.
3.2. Is HTTPS-inspectie ingeschakeld? Zo ja, is de technologie ingesteld volgens Best Practice?
Neem contact op met , als je onze klant bent, of met .
De volgorde van de regels in het HTTPS-inspectiebeleid is van groot belang voor de optimalisatie van het openen van HTTPS-sites.
De aanbevolen volgorde van de regels:
- Bypass-regels met categorieƫn/URL
- Inspect-regels met categorieƫn/URL
- Inspect-regels voor alle andere categorieƫn

In navolging van het firewallbeleid zoekt Check Point naar overeenkomsten in pakketten van boven naar beneden, daarom is het beter om bypass-regels bovenaan te plaatsen, zodat de gateway geen middelen verspilt aan het doorlopen van alle regels als dat pakket overgeslagen moet worden.
3.3 Worden address-range objecten gebruikt?
Objecten met een adresbereik, bijvoorbeeld netwerk 192.168.0.0-192.168.5.0, gebruiken aanzienlijk meer RAM dan 5 netwerkobjecten. Over het algemeen wordt het als goede praktijk beschouwd om ongebruikte objecten in de SmartConsole te verwijderen, omdat de gateway en het managementserver elke keer middelen en vooral tijd verbruiken om het beleid te verifiƫren en toe te passen.
3.4. Hoe is het Threat Prevention-beleid ingesteld?
Allereerst raadt Check Point aan om IPS in een apart profiel te plaatsen en afzonderlijke regels voor deze blade te creƫren.
Bijvoorbeeld, de beheerder is van mening dat het DMZ-segment alleen met IPS moet worden beschermd. Om te voorkomen dat de gateway middelen verspilt aan het verwerken van pakketten met andere blades, moet er een regel specifiek voor dit segment worden gemaakt met een profiel waarin alleen IPS is ingeschakeld.
Wat betreft het instellen van profielen, wordt aangeraden deze volgens de beste praktijken in dit (pagina's 17-20) in te stellen.
3.5. Hoeveel handtekeningen zijn er in de Detect-modus binnen de IPS-instellingen?
Het wordt aanbevolen om de handtekeningen grondig te analyseren, waarbij ongebruikte handtekeningen moeten worden uitgeschakeld (bijvoorbeeld handtekeningen voor exploits van Adobe-producten vereisen veel rekenkracht, en als de klant dergelijke producten niet heeft, is het logisch om de handtekeningen uit te schakelen). Vervolgens Prevent in plaats van Detect plaatsen waar mogelijk, omdat de gateway middelen verbruikt voor het verwerken van de hele verbinding in Detect-modus, terwijl hij in Prevent-modus de verbinding onmiddellijk afwijst en geen middelen verspilt aan de volledige verwerking van het pakket.
3.6. Welke bestanden worden verwerkt door de blades Threat Emulation, Threat Extraction, Anti-Virus?
Het heeft geen zin om bestanden met extensies te emuleren en te analyseren die uw gebruikers niet downloaden, of die u als onnodig beschouwt in uw netwerk (bijvoorbeeld, bat- en exe-bestanden kunnen eenvoudig worden geblokkeerd met de Content Awareness-blade op het niveau van de firewall, waardoor de middelen van de gateway minder worden gebruikt). Bovendien kunt u in de instellingen voor Threat Emulation het Environment (besturingssysteem) kiezen voor het emuleren van bedreigingen in de sandbox, en het instellen van het Environment op Windows 7 terwijl alle gebruikers met versie 10 werken is ook zinloos.
3.7. Zijn de firewallregels en regels op Applicatieniveau opgesteld volgens best practices?
Als een regel veel hits (overeenkomsten) heeft, wordt aangeraden deze bovenaan te plaatsen, terwijl regels met een klein aantal hits onderaan geplaatst dienen te worden. Het belangrijkste is om ervoor te zorgen dat ze elkaar niet kruisen of overlappen. De aanbevolen architectuur van de firewallbeleid is:

Uitleg:
First Rules ā Hier worden de regels geplaatst met het grootste aantal overeenkomsten
Noise Rule ā Regel voor het afwijzen van ongewenste traffic, zoals NetBIOS
Stealth Rule ā Verbod op toegang tot gateways en management voor iedereen, behalve de bronnen die in de Authenticatie naar Gateway-regels zijn opgegeven
Clean-Up, Last en Drop Rules worden doorgaans samengevoegd in ƩƩn regel om alles te verbieden dat eerder niet was toegestaan
Deze best practices zijn beschreven in .
3.8. Welke instellingen zijn ingesteld voor door beheerders gemaakte services?
Bijvoorbeeld, als er een TCP-service wordt aangemaakt op een specifieke poort, is het zinvol om in de geavanceerde instellingen van de service het vinkje bij 'Match for Any' te verwijderen. In dat geval valt deze service specifiek onder de regel waarin hij wordt genoemd en neemt hij niet deel aan de regels waar in de kolom Services 'Any' staat.

Als we het over services hebben, is het belangrijk om te vermelden dat het soms noodzakelijk is om time-outs te tunen. Deze instelling helpt om de middelen van de gateway efficiƫnter te gebruiken, zodat de TCP/UDP-sessies van protocollen die geen lange time-out vereisen niet onnodig lang worden vastgehouden. Bijvoorbeeld, in de screenshot hieronder heb ik de time-out van de domain-udp service verlaagd van 40 seconden naar 30 seconden.

3.9. Wordt SecureXL gebruikt en wat is het percentage versnelling?
De kwaliteit van het werk van SecureXL kan worden gecontroleerd met de belangrijkste commando's in de expert-modus op de gateway fwaccel stat en fw accel stats -s. Vervolgens moet worden uitgezocht welk verkeer wordt versneld en welke templates (sjablonen) nog kunnen worden gemaakt.
Standaard zijn Drop Templates niet ingeschakeld; het inschakelen ervan zal de werking van SecureXL ten goede komen. Ga hiervoor naar de instellingen van de gateway en naar het tabblad Optimalisaties:

Bij het werken met een cluster kan de synchronisatie van niet-kritische services, zoals UDP DNS, ICMP en anderen, worden uitgeschakeld om de CPU te optimaliseren. Ga hiervoor naar de service-instellingen ā Geavanceerd ā Synchroniseer verbindingen van State Synchronization is ingeschakeld op het cluster.

Alle Best Practices zijn beschreven in .
3.10. Hoe wordt CoreXl gebruikt?
De CoreXL-technologie, die het mogelijk maakt om meerdere CPU's te gebruiken voor firewall-instanties, helpt zeker bij het optimaliseren van de werking van het apparaat. Eerst zal het commando fw ctl affinity -l -a de gebruikte firewall-instanties en de processoren tonen die zijn toebedeeld aan de SND-behoeften (module die het verkeer naar firewall-entiteiten verdeelt). Als niet alle processoren zijn betrokken, kunnen ze worden toegevoegd met het commando cpconfig op de gateway.
Een goede optie is ook om in te schakelen voor Multi-Queue. Multi-Queue lost het probleem op waarbij de processor met SND voor een groot percentage wordt gebruikt, terwijl firewall-instanties op andere processoren ongebruikt blijven. Dan zou SND in staat zijn om veel wachtrijen voor ƩƩn NIC te creƫren en verschillende prioriteiten voor verschillende soorten verkeer op kernniveau in te stellen. Hierdoor zouden de CPU-kernen efficiƫnter worden gebruikt. De methoden worden ook beschreven in .
Tot slot wil ik zeggen dat dit lang niet alle Best Practices voor het optimaliseren van Check Point zijn, maar wel de meest populaire. Als u een audit van uw beveiligingsbeleid wilt aanvragen of een probleem met betrekking tot Check Point wilt oplossen, neem dan alstublieft contact op via sales@tssolution.ru.
Bedankt voor uw aandacht!
Bron: habr.com
