Olá colegas! Hoje eu gostaria de discutir o tópico "Otimização de CPU e RAM", que é muito relevante para muitos administradores do Check Point. Há casos frequentes em que o gateway e / ou o servidor de gerenciamento consomem inesperadamente muitos desses recursos, e eu gostaria de entender onde eles estão "vazando" e, se possível, fazer melhor uso deles.
1. Análise
Para analisar a carga do processador, é útil usar os seguintes comandos, que são inseridos no modo especialista:
O topo mostra todos os processos, a porcentagem de CPU e RAM consumida, tempo de atividade, prioridade do processo e muito mais em tempo real e
lista cpwd_admin Check Point WatchDog Daemon, que mostra todos os módulos do aplicativo, seu PID, status e número de partidas
cpstat -f cpu os Uso da CPU, número e distribuição do tempo do processador como porcentagem
cpstat -f memory os usando RAM virtual, quanto está ativo, RAM livre e mais
A observação correta é que todos os comandos cpstat podem ser visualizados usando o utilitário
cpview . Para fazer isso, basta digitar o comando cpview a partir de qualquer modo na sessão SSH.

ps auxwf uma longa lista de todos os processos, seus IDs, memória virtual ocupada e memória na RAM, CPU
Outra variação do comando:
ps -aF mostrará o processo mais caro
afinidade fw ctl -l -uma distribuição de núcleos para diferentes instâncias do firewall, ou seja, a tecnologia CoreXL
fw ctl pstat análise de RAM e indicadores gerais de conexões, cookies, NAT
buffer de RAM livre -m
Atenção especial é dada à equipe
netsat e suas variações. Por exemplo,
netstat -i pode ajudar a resolver o problema de monitorar áreas de transferência. O parâmetro, RX descartou pacotes (RX-DRP) na saída deste comando, como regra, cresce por si só devido a quedas de protocolos ilegítimos (IPv6, tags de VLAN incorretas / não desejadas e outros). No entanto, se ocorrerem quedas por outro motivo, use este
artigo para iniciar uma investigação e entender por que essa interface de rede descarta pacotes. Tendo aprendido o motivo, a operação do apêndice também pode ser otimizada.

Se o painel Monitoramento estiver ativado, você poderá visualizar esses indicadores graficamente no SmartConsole clicando em um objeto e selecionando "Informações sobre o dispositivo e a licença".
Não é recomendável incluir lâminas de monitoramento continuamente, mas durante o dia do teste é bem possível.

Além disso, você pode adicionar mais parâmetros para monitoramento, um deles é muito útil - Taxa de transferência de bytes (taxa de transferência do apêndice).

Se houver algum outro sistema de monitoramento, por exemplo, o
Zabbix gratuito baseado no SNMP, também será adequado para identificar esses problemas.
2. RAM "vazamento" ao longo do tempo
Surge frequentemente a questão de que, com o tempo, o gateway ou o servidor de gerenciamento começa a consumir mais e mais RAM. Quero tranquilizar: esta é uma história normal para sistemas do tipo Linux.
Tendo examinado a saída dos comandos
free -m e
cpstat -f memory os no apêndice a partir do modo expert, é possível calcular e ver todos os parâmetros relacionados à RAM.
De fato, a memória disponível no gateway no momento é
Memória livre +
Memória de buffer +
Memória em cache =
+ -1,5 GB , como regra.
De acordo com a CP, com o tempo, o servidor de gateway / gerenciamento é otimizado e usa mais e mais memória, atingindo cerca de 80% de uso e para. Você pode reiniciar o dispositivo e o indicador será redefinido. 1,5 GB de RAM livre é suficiente para o gateway concluir todas as tarefas, e o gerenciamento raramente atinge esses limites.
Além disso, as conclusões dos comandos acima mostrarão quanto de
memória baixa (RAM no espaço do usuário) e
memória alta (RAM no espaço do kernel) são usadas.
Os processos do kernel (incluindo módulos ativos, como os módulos do kernel Check Point) usam apenas pouca memória. No entanto, os processos do usuário podem usar a memória Baixa e Alta. Além disso, pouca memória é aproximadamente igual à
memória total .
Você deve se preocupar apenas se os logs de erro forem
"módulos reinicializados ou processos sendo mortos para recuperar a memória devido a OOM (falta de memória)" . Em seguida, reinicie o gateway e entre em contato com o suporte se a reinicialização não ajudar.
Uma descrição completa pode ser encontrada em
sk99547 e
sk99593 .
3. Otimização
Abaixo estão perguntas e respostas sobre como otimizar a CPU e a RAM. Eles devem responder honestamente a si mesmos e ouvir as recomendações.
3.1 O uplining estava certo? Houve um projeto piloto?
Apesar do dimensionamento competente, a rede pode ficar brega e esse equipamento simplesmente não consegue lidar com a carga. A segunda opção, se não houver dimensionamento como tal.
3.2 A inspeção HTTPS está ativada? Em caso afirmativo, a tecnologia está configurada de acordo com as melhores práticas?
Consulte o
artigo se você é nosso cliente ou
sk108202 .
A ordem das regras na política de inspeção HTTPS é de grande importância na otimização da abertura de sites HTTPS.
Ordem recomendada de regras:
- Ignorar regras com categorias / URL
- Inspecionar regras com categorias / URLs
- Inspecionar regras para todas as outras categorias

Por analogia com a política de firewall, o Check Point procura pacotes correspondentes de cima para baixo; portanto, é melhor colocar as regras de desvio no topo, pois o gateway não gastará recursos na execução de todas as regras, se você precisar pular este pacote.
3.3 Os objetos de intervalo de endereços são usados?
Objetos com um intervalo de endereços, por exemplo, a rede 192.168.0.0-192.168.5.0, consomem significativamente mais RAM do que 5 objetos de rede. Em geral, é considerado uma boa prática excluir objetos não utilizados no SmartConsole, pois cada vez que a política é instalada, o gateway e o servidor de gerenciamento gastam recursos e, mais importante ainda, tempo para verificar e aplicar a política.
3.4 Como a política de prevenção de ameaças está configurada?
Primeiro, o Check Point recomenda mover o IPS para um perfil separado e criar regras separadas para esse blade.
Por exemplo, o administrador acredita que o segmento DMZ deve ser protegido apenas com o IPS. Portanto, para que o gateway não desperdice recursos processando pacotes com outros blades, é necessário criar uma regra específica para esse segmento com um perfil no qual apenas o IPS esteja ativado.
Em relação à configuração de perfis, é recomendável configurá-lo de acordo com as melhores práticas deste
documento (páginas 17-20).
3.5 Nas configurações do IPS, quantas assinaturas existem no modo Detectar?
É recomendável que você trabalhe com cuidado nas assinaturas, no sentido de desabilitar as não utilizadas (por exemplo, as assinaturas para o uso de produtos Adobe exigem muita capacidade de computação e, se o cliente não tiver esses produtos, faz sentido desabilitar as assinaturas). Em seguida, coloque Prevenir em vez de Detectar sempre que possível, porque o gateway gasta recursos no processamento de toda a conexão no modo Detectar; no modo Impedir, ele interrompe imediatamente a conexão e não gasta recursos no processamento completo do pacote.
3.6 Quais arquivos são processados pelas lâminas de emulação, extração de ameaças e antivírus de ameaças?
Não faz sentido emular e analisar arquivos de extensão que seus usuários não baixam ou que você acha desnecessários na sua rede (por exemplo, arquivos bat, exe podem ser facilmente bloqueados usando a folha de conscientização de conteúdo no nível do firewall, para que os recursos do gateway sejam gastos menos). Além disso, nas configurações de Emulação de ameaças, você pode selecionar Ambiente (sistema operacional) para emular ameaças na sandbox e instalar o Ambiente Windows 7 quando todos os usuários estiverem trabalhando com a versão 10, também não faz sentido.
3.7 As regras de firewall e as regras de nível de aplicativo são organizadas de acordo com as melhores práticas?
Se a regra tiver muitos hits (correspondências), é recomendável colocá-los no topo e reger com um pequeno número de hits - na parte inferior. O principal é garantir que eles não se sobreponham e se sobreponham. Arquitetura de diretiva de firewall recomendada:

Explicações:
Primeiras regras - as regras com mais correspondências são colocadas aqui
Regra de ruído - uma regra para eliminar tráfego espúrio, como o NetBIOS
Regra Stealth - proibição de acesso a gateways e gerenciamento a todos, exceto as fontes especificadas nas Regras de autenticação para gateway
Regras de limpeza, último e descarte, como regra, são combinadas em uma regra para banir tudo o que não era permitido antes
Os dados das melhores práticas estão descritos em
sk106597 .
3.8 Quais são as configurações dos serviços criados pelos administradores?
Por exemplo, algum tipo de serviço TCP é criado em uma porta específica e, nas configurações Avançadas do serviço, faz sentido desmarcar a opção "Corresponder a Qualquer". Nesse caso, esse serviço se enquadra especificamente na regra em que aparece e não participa das regras em que Qualquer está na coluna Serviços.

Falando em serviços, vale ressaltar que, às vezes, é necessário reduzir o tempo limite. Essa configuração permitirá que você use com mais eficiência os recursos do gateway, para não manter as sessões de protocolo TCP / UDP que não precisam de um grande tempo limite. Por exemplo, na captura de tela abaixo, reorganizei o tempo limite do serviço domain-udp de 40 segundos para 30 segundos.

3.9 O SecureXL é usado e qual é a porcentagem de aceleração?
Você pode verificar a qualidade do desempenho do SecureXL com os comandos básicos no modo expert nos
gateways fwaccel stat e
fw accel stats -s . Em seguida, você precisa entender que tipo de tráfego está acelerando, quais modelos (modelos) você pode criar mais.
Por padrão, os Modelos de Drop não estão ativados, sua inclusão afetará favoravelmente a operação do SecureXL. Para fazer isso, vá para as configurações do gateway e na guia Otimizações:

Além disso, ao trabalhar com um cluster para otimizar a CPU, você pode desativar a sincronização de serviços não críticos, como UDP DNS, ICMP e outros. Para fazer isso, vá para as configurações de serviço → Avançado → Sincronizar conexões da Sincronização de Estado está ativado no cluster.

Todas as práticas recomendadas são descritas em
sk98348 .
3.10 Como o CoreXl é usado?
A tecnologia CoreXL, que permite o uso de várias CPUs para instâncias de firewall (módulos de firewall), ajuda claramente a otimizar a operação do dispositivo. Primeiro, o
comando fw ctl affinity -l -a mostrará as instâncias de firewall usadas e os processadores fornecidos ao SND (o módulo que distribui o tráfego às entidades de firewall). Se nem todos os processadores estiverem envolvidos, eles poderão ser adicionados com o comando
cpconfig no gateway.
Também é uma boa história colocar um
hotfix para ativar a Fila múltipla. A Fila múltipla resolve o problema quando um processador com SND é usado por muitos por cento e as instâncias de firewall em outros processadores estão ociosas. O SND teria a oportunidade de criar muitas filas para uma NIC e definir prioridades diferentes para tráfego diferente no nível do kernel. Conseqüentemente, os núcleos da CPU serão usados com mais competência. As técnicas também são descritas em
sk98348 .
Concluindo, gostaria de dizer que nem todas as práticas recomendadas são para otimizar o trabalho do Check Point, mas as mais populares. Se você deseja solicitar uma auditoria de sua política de segurança ou resolver um problema relacionado ao Check Point, entre em contato com sales@tssolution.ru.
Obrigado pela atenção!