O que é

Além das jails globais do servidor, cada site WordPress tem jails específicas que você ativa na
aba Segurança do site. Elas fecham o cerco contra os ataques típicos de WordPress.

Aba Segurança de um site WordPress, com o limite de tentativas de login e as jails ativas

Ativando as jails do WordPress

A segurança por site não vem ativa automaticamente: você precisa ligá-la em cada site. Sem
isso, aquele site específico não está protegido pelas jails de WordPress.

Ao ativar, o fail2ban já consulta os logs e bane na hora os IPs que já estavam atacando. As
proteções incluem:

  • Login brute force: bane quem excede o limite de tentativas na tela de login do WordPress.
  • Scan de plugins e arquivos: identifica quem vasculha arquivos de plugins e áreas
    vulneráveis.
  • Atacantes persistentes: os que buscam .env e caminhos inexistentes.
  • Scanners em geral.

Ajustando o limite de tentativas de login

O padrão é 5 tentativas erradas → bloqueio de 60 minutos. Para sites onde o usuário erra login
com frequência (área de membros, e-commerce), esse valor pode ser baixo, e é o único que o painel
deixa você personalizar:

  1. Na aba Segurança, ajuste o número de tentativas e o tempo de bloqueio.
  2. Por exemplo: 20 tentativas → bloqueio de 15 minutos, para uma área de membros movimentada.

Atenção em testes de carga

Se você for fazer teste de carga, lembre que com as jails ativas o
fail2ban pode bloquear o próprio teste: para ele, milhares de requisições em um minuto parecem
um ataque. Coloque o IP de origem do teste na
lista de liberados antes de começar.

Limites de memória

Ainda na preparação de segurança, você pode ajustar os limites de memória do WordPress (no
wp-config.php): WP_MEMORY_LIMIT (uso público) e WP_MAX_MEMORY_LIMIT (administração). O GW
Server já define bons valores; ajuste só se o servidor comportar. Ver
Arquivos e permissões.

Bloqueio de execução em uploads

A pasta uploads é onde o WordPress guarda as imagens e os arquivos enviados, e é justamente por
ela que um invasor tenta subir um arquivo PHP disfarçado para tomar o site. O GW Server impede
que qualquer PHP seja executado ali
: mesmo que o arquivo chegue à pasta, ele não roda.

Essa proteção vem ligada por padrão em todo site WordPress, sem você precisar fazer nada.

Veja também