A feature de IPS do Fortigate é uma das mais importantes do firewall, pois é responsável por identificar tráfego mal intencionado na rede, tanto de fora pra dentro quanto de dentro pra fora. Dessa forma, o IPS monitora o tráfego de entrada e o inspeciona em busca de vulnerabilidades e exploração de segurança e, quando detectadas, toma medidas apropriadas, como bloquear o acesso, colocar hosts em quarentena e bloquear tráfego direcionado a sites considerados maliciosos.

Mas e quando todo esse benefício começa a se tornar um problema para o seu Fortigate? Você nota que o consumo de memória e CPU está muito alto e por algumas vezes ocorre o problema de “Memory conserve mode” devido ao IPS estar consumindo muito recurso de hardware, o que há para se fazer? Existem alguns procedimentos para otimizar esse consumo e evitar que o IPS esgote toda memória e CPU do seu Fortigate.

Verificar os processos que estão em execução no Fortigate

Execute o comando diagnose sys top e veja os processos em execução do firewall:

  1. Nome do processo;
  2. PID do processo;
  3. Estado do Processo (R – running | S – sleep | Z – zombie | D – disk sleep);
  4. Porcentagem de utilização do CPU;
  5. Porcentagem da utilização da memória RAM;

Normalmente, se o IPS realmente estiver consumindo muita memória e CPU, você deverá encontrar nessa lista acima vários processos do ipsengine. Feche a janela de processos com o comando CTRL + C.

Execute o seguinte comando diagnose test app ipsmonitor e veja a lista de opções possíveis a se escolher.

Escolha a opção 5: Toggle bypass status, isso vai fazer com que o Fortigate habilite o bypass no tráfego utilizado pela ferramenta de IPS, dessa forma, o comando a ser executado é diagnose test app ipsmonitor 5 . Note que será mostrado na tela algo parecido com a imagem abaixo:

Após executar este comando, verifique se a memória e o CPU do Fortigate diminuíram, se você perceber que houve uma queda considerável, então realmente o IPS está afetando a performance do firewall. Para voltar o IPS ativo no Fortigate basta executar novamente o comando diagnose test app ipsmonitor 5.



O que fazer para otimizar a utilização de memória e CPU?

Primeiramente, diminua o tempo das sessões não utilizadas para que sejam fechadas mais rápido. Execute os comandos:

config system global

set tcp-halfclose-timer 30

set tcp-halfopen-timer 30

set tcp-timewait-timer 0

set udp-idle-timer 60

end

Ajuste os sensores IPS do Fortigate, execute os comandos

config ips global

set socket-size N : Insira o valor do tamanho do socket, por padrão, o valor é 64);

set engine-count N : Insira número de ipsengine que o Fortigate irá utilizar, por padrão, o valor é 0 e o fortigate utiliza de forma automática de acordo com o número de CPU cores;

end

Após finalizar os comandos, execute os comandos abaixo para reiniciar os processos de IPS:

diag test app ipsmonitor 99

diag test app ipsengine 99

Após isso, uma boa prática também recomendada é mudar as atualizações do FortiGuard de IPS e Antivírus para um momento fora do horário de pico, apesar das atualizações Fortiguard não utilizar recurso de CPU, elas podem causar interrupções na operação normal do firewall. Acesse o menu “System > Fortiguard” e faça os ajustes necessários.

Link de referência:

Troubleshooting high CPU usage – Fortigate