# Como corrigir o acesso de alunos bloqueado pelo All in One Security no Tutor LMS

O acesso de alunos bloqueado pelo AIOS no Tutor LMS acontece quando a Brute Force Prevention do All in One Security esconde o wp-login.php atras de uma URL com palavra secreta e o login do frontend, que não tem o cookie, cai num bloqueio ou e jogado para o redirect padrão. O aluno tenta logar pelo painel do curso e nunca entra.

## O que é o bloqueio do AIOS no Tutor LMS?

O All in One Security (AIOS) tem recursos de proteção de login (Brute Force Prevention por cookie, Login Lockdown e Rename Login Page) que assumem que todo mundo entra pelo wp-login.php padrão. O Tutor LMS faz o contrario: o aluno se cadastra e entra por um formulário no frontend (o painel do aluno em /dashboard/ e o login embutido nas páginas de curso), que envia a autenticacao para o wp-login.php ou para uma acao AJAX. Quando o AIOS endurece o login, esse caminho do frontend deixa de ter o que o plugin espera (a palavra secreta na URL ou o cookie) e o aluno e bloqueado, redirecionado ou trancado por excesso de tentativas.

## Como identificar

- O aluno preenche usuário e senha no painel do Tutor LMS, clica em entrar e a página recarrega no mesmo formulário sem mensagem de erro, ou o login simplesmente não avanca.
- Após a tentativa de login pelo curso, o navegador redireciona para um endereco estranho como 'http://127.0.0.1' em vez de abrir o painel do aluno.
- O aluno recebe a mensagem de tentativas excedidas tipo 'Você excedeu o número máximo de tentativas de login' e o acesso fica travado por alguns minutos.
- O cadastro de novo aluno no frontend conclui, mas o login seguinte falha; o problema some quando o AIOS e desativado e volta quando ele e religado.
- Na aba Rede do navegador (F12), a requisicao de login para wp-login.php ou para admin-ajax.php retorna status 403 ou um redirect 302 para a URL de bloqueio do AIOS.

**Antes de começar:** Antes de mexer no firewall, faca backup do banco de dados e do arquivo .htaccess. Se você ficar trancado fora do wp-admin pelo próprio AIOS, use FTP ou o gerenciador de arquivos da hospedagem para renomear a pasta do plugin (wp-content/plugins/all-in-one-wp-security-and-firewall) e recuperar o acesso, depois renomeie de volta e ajuste as configurações. Não desligue a proteção de login de forma permanente: prefira afrouxar os limites e liberar os alunos por allowlist.

## Como prevenir

- Antes de ligar a Brute Force Prevention por cookie, confirme se o tema ou o Tutor LMS usam login no frontend; se usam, prefira o Login Lockdown com limite tolerante a esconder o wp-login.php.
- Mantenha o seu IP de gestão na allowlist do AIOS para nunca ser trancado pelo próprio firewall ao testar o fluxo do aluno.
- Defina um Max Login Attempts que tolere o erro de senha normal de um aluno (por exemplo 5 ou mais) em vez do valor mínimo.
- Se for renomear a página de login, teste o cadastro e o login de um aluno de ponta a ponta antes de liberar o curso ao público.
- Troque o Redirect URL do padrão http://127.0.0.1 para a home do site, para que um bloqueio acidental ao menos caia numa página real.

Erros relacionados

- [Como desbloquear usuários legítimos travados pelo Login Security do All in One Security](https://full.services/wp-fixer/corrigir-bloqueio-usuarios-aios/)
- [Como corrigir alunos sem acesso ao login no Tutor LMS](https://full.services/wp-fixer/corrigir-login-aluno-tutor-lms/)
- [Como corrigir o checkout bloqueado pelo firewall do All in One Security no WooCommerce](https://full.services/wp-fixer/corrigir-bloqueio-checkout-aios-woocommerce/)

## Causa

- Brute Force Prevention por cookie ligada em Firewall -> Brute Force Prevention, escondendo o wp-login.php atras da palavra secreta; o login do frontend do Tutor LMS não tem o cookie e cai no Redirect URL.
- Redirect URL da Brute Force Prevention deixado no padrão http://127.0.0.1, jogando o aluno sem cookie para um endereco morto em vez do painel do curso.
- Login Lockdown ativo em Brute Force -> Login Lockdown com limite baixo de tentativas, trancando o IP do aluno após poucos erros de senha no formulário do Tutor LMS.
- Rename Login Page ligado, mudando o endereco do wp-login.php para um slug secreto, de modo que o POST de login do Tutor LMS aponta para um endereco que o AIOS agora rejeita.
- Allowlist de IP não configurada, entao nenhum aluno ou faixa de IP legitima esta liberada das regras de brute force do AIOS.
- Bloqueio do XML-RPC ou de bots junto com regras de firewall que também barram as chamadas admin-ajax.php usadas pelo login e pela matricula do aluno no frontend.

## Como resolver

1. Confirme que o bloqueio vem do AIOS: reproduza o login do aluno pelo painel do Tutor LMS com a aba Rede do navegador aberta e veja se a requisicao de login retorna 403 ou redireciona para a URL de bloqueio; em seguida desative o AIOS por um instante e tente de novo para confirmar a origem.

```
F12 -> aba Rede -> filtrar por wp-login.php e admin-ajax.php
Plugins -> Desativar All in One Security (teste) -> testar login do aluno -> reativar
```

2. Ajuste a Brute Force Prevention por cookie: no recurso que esconde o login, desligue a Brute Force Prevention enquanto investiga, ou troque o Redirect URL do padrão local para a home do site, para o aluno sem cookie não cair num endereco morto.

```
WP Security -> Firewall -> Brute Force Prevention -> Enable Brute Force Attack Prevention -> Off (temporario)
WP Security -> Firewall -> Brute Force Prevention -> Redirect URL
```

3. Afrouxe o Login Lockdown e libere o IP do aluno: aumente o número de tentativas permitidas e reduza o tempo de bloqueio do Login Lockdown, e remova da lista de bloqueio os IPs de alunos legitimos travados por erro de senha no formulário do curso.

```
WP Security -> Brute Force -> Login Lockdown -> Max Login Attempts
WP Security -> Brute Force -> Login Lockdown -> Login Lockout Time Length
WP Security -> Brute Force -> Login Lockdown -> Locked IP addresses
```

4. Reveja o Rename Login Page: se o endereco de login foi renomeado, desligue o Rename Login Page ou garanta que o Tutor LMS use o login do frontend e não um link para o wp-login.php antigo, para o POST de login não bater num endereco que o AIOS agora rejeita.

```
WP Security -> Brute Force -> Rename Login Page -> Enable Rename Login Page Feature -> Off
```

5. Libere por allowlist e confirme o AJAX: adicione o seu IP de gestão e, se possível, a faixa dos alunos na allowlist do AIOS, e verifique se o bloqueio de XML-RPC ou de bots não esta barrando o admin-ajax.php usado pelo login e pela matricula do Tutor LMS.

```
WP Security -> Settings -> Allowlist
WP Security -> Firewall -> Internet Bots / WP REST API (revisar regras que tocam admin-ajax.php)
```


## Código

```sql
-- Emergencia: liberar um aluno trancado pelo Login Lockdown do AIOS quando voce
-- nao consegue acessar o painel. Rode no phpMyAdmin / Adminer da hospedagem.
-- Ajuste o prefixo 'wp_' se o seu banco usar outro (ex.: wpab1_).

-- 1) Ver os IPs presos pelo lockdown (login lockout e 404 ficam na mesma tabela):
SELECT id, user_id, lockdown_date, release_date, failed_login_ip, lock_reason
FROM wp_aiowps_login_lockdown
ORDER BY lockdown_date DESC;

-- 2) Soltar TODOS os bloqueios de login de uma vez:
DELETE FROM wp_aiowps_login_lockdown;

-- 3) (Opcional) desligar a Brute Force Prevention por cookie direto na config do AIOS,
--    caso ela tenha trancado voce fora do wp-login.php:
UPDATE wp_options
SET option_value = REPLACE(option_value,
      's:35:"aiowps_enable_brute_force_attack_prevention";s:1:"1"',
      's:35:"aiowps_enable_brute_force_attack_prevention";s:1:"0"')
WHERE option_name = 'aio_wp_security_configs';
```

## Perguntas frequentes

### Por que o aluno não consegue logar no Tutor LMS depois que instalei o AIOS

Porque a proteção de login do AIOS espera que todos entrem pelo wp-login.php padrão, mas o Tutor LMS usa um formulário no frontend. Com a Brute Force Prevention por cookie ligada, o login do aluno não tem o cookie da palavra secreta e e bloqueado ou redirecionado para a URL de bloqueio, normalmente o padrão 127.0.0.1.

### O login do aluno redireciona para 127.0.0.1. O que e isso

Esse e o Redirect URL padrão da Brute Force Prevention do AIOS, um endereco local morto. Quem tenta logar sem o cookie da palavra secreta e mandado para la. Troque esse campo pela home do seu site em Firewall -> Brute Force Prevention -> Redirect URL para o aluno cair numa página real enquanto você corrige a regra.

### Como libero o login do aluno sem desligar toda a segurança do AIOS

Desligue apenas a Brute Force Prevention por cookie, que e a regra incompativel com login de frontend, e mantenha o Login Lockdown com um limite tolerante. Em seguida adicione o seu IP e a faixa dos alunos na allowlist em WP Security -> Settings -> Allowlist. Assim o brute force continua protegendo o site sem trancar o aluno.

### O aluno viu a mensagem de tentativas excedidas. Como resolvo

Esse e o Login Lockdown trancando o IP após várias senhas erradas. Va em WP Security -> Brute Force -> Login Lockdown, aumente o Max Login Attempts para um valor que tolere o erro normal de um aluno e remova o IP travado da lista de IPs bloqueados. Depois oriente o aluno a redefinir a senha se ele a esqueceu.

### Renomeei a página de login no AIOS e o login do curso parou. Por que

O Rename Login Page muda o endereco do wp-login.php para um slug secreto, mas o POST de login do Tutor LMS continua apontando para o endereco antigo, que o AIOS passa a rejeitar. Desligue o Rename Login Page em WP Security -> Brute Force -> Rename Login Page ou garanta que o Tutor LMS use o login do frontend, e não um link para o wp-login.php renomeado.

### A matricula e o cadastro do aluno também podem ser bloqueados pelo AIOS

Sim. O cadastro e a matricula do Tutor LMS usam chamadas para o admin-ajax.php, e regras de firewall do AIOS que bloqueiam bots, XML-RPC ou certas requisicoes podem barrar essas chamadas. Verifique em WP Security -> Firewall se alguma regra esta tocando o admin-ajax.php e libere essa rota antes de reabrir o curso.

### Fiquei trancado fora do meu próprio wp-admin pelo AIOS. Como recupero

Acesse o site por FTP ou pelo gerenciador de arquivos da hospedagem e renomeie a pasta do plugin all-in-one-wp-security-and-firewall para desativar o AIOS na forca. Com o acesso de volta, renomeie a pasta de novo, libere o seu IP na allowlist e ajuste a proteção de login antes de reativar o plugin.

### Devo desativar o AIOS de vez para o Tutor LMS funcionar

Não precisa. O conflito vem de regras especificas de login (Brute Force por cookie e Rename Login Page) que assumem o wp-login.php padrão. Desligue so essas, mantenha o Login Lockdown tolerante e a allowlist configurada, e o resto da proteção do AIOS continua valendo junto com o Tutor LMS.

**Fonte:** [All in One Security — Cookie-based brute force login attack prevention feature](https://teamupdraft.com/documentation/all-in-one-security/faqs/how-to-use-cookie-based-brute-force-login-attack-prevention-feature/)
