Como ativar e configurar o ModSecurity no servidor cPanel: instalação pelo EasyApache 4, regras OWASP CRS em ModSecurity Vendors, ajustes e logs no WHM.
O ModSecurity é um firewall de aplicação web (WAF) que roda junto com o servidor web. Ele examina cada requisição e bloqueia as que parecem ataque: injeção de SQL, XSS, envio de arquivos maliciosos, robôs de varredura conhecidos. Sozinho ele não faz nada; quem decide o que bloquear é o conjunto de regras. No cPanel, o conjunto gratuito padrão é o OWASP ModSecurity Core Rule Set (CRS).
Antes de começar
- Acesso root ao WHM.
- Saiba que regras novas podem bloquear funções legítimas de algum site (o famoso falso positivo). Ative num horário tranquilo e acompanhe os logs nos primeiros dias.
- Tutoriais antigos mandam baixar regras pagas da Atomicorp por um link de 2012 e criar pastas em
/var/asl. Esse método não vale mais: as regras ficaram desatualizadas e o caminho de configuração mudou.
Passo 1: instalar o módulo pelo EasyApache 4
- Abra o EasyApache 4 em WHM » Software » EasyApache 4 e clique em Customize no perfil em uso.
- Em Apache Modules, procure
mod_security2e ative o pacoteea-apache24-mod_security2. - Revise e aplique em Review » Provision. O Apache é recompilado e reiniciado.
Pelo SSH, o equivalente no AlmaLinux, Rocky ou CloudLinux é dnf install ea-apache24-mod_security2.
Passo 2: instalar as regras OWASP CRS
- Abra ModSecurity Vendors em WHM » Security Center » ModSecurity™ Vendors.
- Instale o OWASP ModSecurity Core Rule Set clicando em Install e depois em Install and Restart Apache. Use a versão distribuída pelo pacote
ea-modsec2-rules-owasp-crs, que recebe atualizações; a versão antiga "V3.0" listada como legado não é mais atualizada. - Deixe Updates em On na linha do fornecedor, para as regras serem atualizadas na manutenção automática do cPanel.
- Desative grupos inteiros se precisar. O botão Edit do fornecedor lista os arquivos de regras e permite desligar um arquivo específico sem desligar os outros.
Passo 3: revisar a configuração geral
Em WHM » Security Center » ModSecurity™ Configuration ficam as opções globais. As principais:
| Opção | Padrão | Recomendação |
|---|---|---|
| Audit Log Level | Log noteworthy | Mantenha. "Log all" grava todas as requisições, inclusive dados pessoais dos visitantes, e enche o disco. |
| Rules Engine | Process the rules | Para testar sem bloquear, use o modo que só registra (detecção) por alguns dias e depois volte. |
| Connections Engine | Process the rules | Mantenha. |
| PCRE Match Limit e Recursion | 1500 | Aumente só se o log mostrar erros de limite de PCRE. |
Passo 4: acompanhar o que está sendo bloqueado
Em WHM » Security Center » ModSecurity™ Tools, a aba Hits List mostra cada bloqueio com data, domínio, endereço acessado e o ID da regra. Clicando no ID, você pode editar ou desativar a regra no servidor inteiro. A aba Rules List lista as regras por fornecedor e permite criar regras próprias (gravadas em /etc/apache2/conf.d/modsec/modsec2.user.conf).
Pelo SSH, as linhas de bloqueio também aparecem no log de erros do Apache:
grep -i modsecurity /etc/apache2/logs/error_log | tail -n 20
Procure o trecho [id "942100"] em cada linha: esse número é o que você usa para liberar a regra.
Como tratar falsos positivos
Quando uma regra bloqueia algo legítimo (salvar um post, um checkout, um upload), há três níveis de solução, do mais seguro para o menos seguro:
- Remover só aquela regra, só naquele domínio.
- Desativar o ModSecurity só naquele domínio, pelo cPanel da conta.
- Desativar a regra no servidor inteiro, pelo ModSecurity Tools.
O passo a passo dos três está em como desativar o ModSecurity por domínio ou por regra.
Problemas comuns
Site começou a dar erro 403 depois de ativar o ModSecurity
Abra a Hits List, filtre pelo domínio e veja qual regra disparou. Normalmente é uma regra só, e ela pode ser liberada apenas para aquele domínio.
O CSF está bloqueando o IP de quem leva bloqueios do ModSecurity
É a opção LF_MODSEC do CSF (padrão: bloqueia depois de 5 disparos). Se um falso positivo está bloqueando clientes no firewall, corrija a regra; aumentar o limite só esconde o problema.
O servidor usa LiteSpeed em vez de Apache
O LiteSpeed Enterprise processa as regras do ModSecurity configuradas no WHM. As telas ModSecurity Vendors e ModSecurity Tools continuam valendo; depois de mudanças, reinicie o servidor web pelo plugin do LiteSpeed no WHM.