# Como corrigir os alertas de e-mail que não chegam no All in One Security

Os alertas de e-mail do AIOS não chegam quando o WordPress não consegue entregar mensagens via wp_mail, quando a opção de notificação por e-mail do recurso está desligada ou quando o endereço de destino está vazio ou incorreto nas configurações do All in One Security.

## O que é alertas de email do AIOS que não chegam?

Os alertas de e-mail do AIOS são as notificações de segurança que o All in One Security dispara quando um evento monitorado acontece: um usuário é bloqueado pelo login lockout, o scanner de file change detection encontra arquivos alterados, ou uma conta de administrador faz login. Cada um desses recursos tem a sua própria opção de avisar por e-mail e o seu próprio campo de endereço de destino, todos dentro do menu WP Security no painel do WordPress.

Quando esses alertas param de chegar, na grande maioria dos casos o problema não está no AIOS em si, e sim na entrega de e-mail do WordPress. O AIOS apenas chama a função wp_mail do núcleo, que por padrão usa a função mail do PHP do servidor. Se o servidor de hospedagem não tem um transporte de e-mail confiável, ou se o remetente cai em spam por falta de SPF e DKIM, a mensagem é gerada mas nunca chega. Opções de notificação desligadas e campos de e-mail vazios ou com endereço errado completam as causas mais comuns.

## Como identificar

- Você é bloqueado pelo login lockout do AIOS, vê a tela 'You have been locked out due to too many incorrect login attempts', mas nenhum e-mail de aviso chega na caixa do administrador.
- O painel do AIOS registra eventos em WP Security e mostra logins bloqueados e arquivos alterados, porém nenhum e-mail correspondente é recebido.
- Outros plugins do site (WooCommerce, formulários de contato) também não enviam e-mail, indicando que o problema é do WordPress e não só do AIOS.
- Os e-mails do AIOS chegam, mas caem direto na pasta de spam ou lixo eletrônico, com remetente parecendo suspeito.
- Ao salvar uma configuração no AIOS o aviso de 'Settings saved' aparece, mas o teste de bloqueio ou de alteração de arquivo não dispara nenhuma notificação.

**Antes de começar:** Antes de instalar um plugin de SMTP ou editar registros de DNS em produção, faça um backup do site e dos registros atuais do domínio, ou teste primeiro em um ambiente de staging, para conseguir reverter caso a entrega de e-mail piore.

## Como prevenir

- Configure um envio por SMTP autenticado logo na montagem do site, em vez de depender da função mail do PHP da hospedagem, que costuma ser bloqueada ou cair em spam.
- Publique e mantenha os registros SPF e DKIM do domínio para que toda notificação de segurança chegue autenticada na caixa de entrada.
- Depois de ativar cada recurso do AIOS, faça um teste real de bloqueio ou de alteração de arquivo para confirmar que o alerta por e-mail está chegando.
- Monitore periodicamente a entrega com um e-mail de teste, já que troca de hospedagem ou de provedor de e-mail pode derrubar o envio sem aviso.

Erros relacionados

- [Como corrigir o bloqueio de login que não funciona no All in One Security](https://full.services/wp-fixer/corrigir-bloqueio-login-aios/)
- [Como corrigir o 404 Lockout que bloqueia visitantes no All in One Security](https://full.services/wp-fixer/corrigir-404-lockout-aios/)
- [Como corrigir falsos positivos do File Change Detection no All in One Security](https://full.services/wp-fixer/corrigir-file-change-detection-aios/)

## Causa

- A função wp_mail do WordPress está falhando no servidor: a hospedagem não tem a função mail do PHP habilitada ou não oferece um transporte de e-mail, então o AIOS gera a notificação mas o WordPress nunca a entrega.
- A opção de notificação por e-mail do recurso está desmarcada no AIOS, por exemplo o campo de aviso do login lockout em WP Security ou o e-mail de file change detection no scanner, deixando o evento sem alerta.
- O campo de e-mail de destino dentro da configuração do recurso do AIOS está vazio ou com um endereço digitado errado, então não há para quem enviar a notificação.
- O domínio do site não tem registros SPF e DKIM configurados, fazendo o provedor de destino marcar o e-mail do AIOS como spam ou recusar a entrega por falta de autenticação do remetente.
- Um plugin de SMTP instalado no site está com credenciais inválidas ou host errado, sobrescrevendo o wp_mail e derrubando todo o envio, inclusive os alertas do AIOS.

## Como resolver

1. Confirme se o WordPress consegue enviar e-mail: Antes de mexer no AIOS, teste se o próprio WordPress entrega e-mail. Use a recuperação de senha na tela de login com um e-mail real, ou um plugin de teste de envio. Se nem esse e-mail chega, o problema é da entrega do WordPress, não do AIOS.

```
Acesse a tela de login do WordPress e clique em 'Perdeu sua senha?'
Informe um e-mail válido e verifique se a mensagem de redefinição chega (inclusive na pasta de spam)
```

2. Ative a notificação por e-mail no recurso do AIOS: No painel do WordPress, abra o menu WP Security e localize o recurso que deveria avisar, como o login lockout ou o file change detection. Marque a opção de enviar e-mail e confirme que a caixa de notificação está habilitada antes de salvar.

```
Painel WP -> WP Security -> Brute Force / Login Lockout
Marque a opção de notificar por e-mail e clique em Save Settings
Painel WP -> WP Security -> Scanner -> File Change Detection -> habilite o aviso por e-mail
```

3. Preencha o endereço de e-mail de destino correto: Ainda na configuração do recurso no AIOS, confira o campo de endereço que recebe as notificações. Apague qualquer endereço antigo ou inválido e preencha um e-mail do administrador que você consiga monitorar, depois salve.

```
No recurso do AIOS, localize o campo de e-mail de destino da notificação
Digite um endereço de administrador válido e salve as configurações
```

4. Instale e configure um plugin de SMTP autenticado: Se o WordPress não entrega e-mail pela função mail do PHP, configure um envio por SMTP autenticado. Um plugin de SMTP passa a tratar o wp_mail por um servidor de e-mail real com usuário e senha, o que torna a entrega dos alertas do AIOS confiável.

```
Painel WP -> Plugins -> Adicionar novo -> instale um plugin de SMTP (ex.: WP Mail SMTP)
Informe host, porta, usuário e senha do seu provedor de e-mail e envie um e-mail de teste pelo próprio plugin
```

5. Autentique o remetente com SPF e DKIM: Para os e-mails pararem de cair em spam, publique os registros SPF e DKIM do seu provedor de envio no DNS do domínio. Isso autentica o remetente e faz o provedor de destino aceitar as notificações do AIOS na caixa de entrada.

```
No painel de DNS do domínio, publique o registro TXT de SPF do seu provedor de e-mail
Publique o registro DKIM fornecido pelo provedor e aguarde a propagação do DNS
```


## Código

```php
<?php
// Coloque no functions.php do tema-filho para confirmar se o wp_mail entrega.
// Se este e-mail de teste nao chegar, o problema e a entrega do WordPress,
// nao o AIOS: configure um SMTP autenticado antes de mexer nas opcoes do plugin.
add_action( 'admin_init', 'full_testar_wp_mail_aios' );
function full_testar_wp_mail_aios() {
    if ( ! current_user_can( 'manage_options' ) || ! isset( $_GET['full_test_mail'] ) ) {
        return;
    }
    $para    = get_option( 'admin_email' );
    $assunto = 'Teste de envio de e-mail do WordPress (AIOS)';
    $corpo   = 'Se voce recebeu esta mensagem, o wp_mail esta entregando e os alertas do AIOS devem chegar.';
    $ok      = wp_mail( $para, $assunto, $corpo );
    wp_die( $ok ? 'wp_mail retornou true: e-mail enfileirado para ' . esc_html( $para ) : 'wp_mail retornou false: a entrega de e-mail do WordPress esta falhando.' );
}
```

## Perguntas frequentes

### Por que o AIOS não envia os e-mails de alerta de segurança

Na maioria dos casos o WordPress é que não consegue entregar e-mail pelo servidor. O AIOS apenas chama a função wp_mail do núcleo, então se a hospedagem não tem um transporte de e-mail confiável a notificação é gerada mas nunca chega. Teste o envio do WordPress com a recuperação de senha antes de procurar o problema no AIOS.

### Onde ligo a notificação por e-mail do login lockout no AIOS

No painel do WordPress, abra o menu WP Security e o recurso de brute force ou login lockout. Marque a opção de notificar por e-mail, preencha o endereço de destino e salve. Sem essa opção marcada o bloqueio acontece, mas nenhum aviso é enviado.

### O problema é do AIOS ou do WordPress quando o e-mail não chega

Se outros plugins do site, como WooCommerce ou formulários de contato, também não enviam e-mail, o problema é da entrega do WordPress e não do AIOS. Teste a recuperação de senha; se esse e-mail não chega, configure um SMTP autenticado antes de mexer nas opções do AIOS.

### Preciso de um plugin de SMTP para o AIOS enviar e-mail

Você precisa se a hospedagem não entrega e-mail pela função mail do PHP, o que é comum em servidores compartilhados. Um plugin de SMTP autenticado faz o wp_mail usar um servidor de e-mail real com usuário e senha, tornando a entrega das notificações do AIOS confiável.

### Os e-mails do AIOS chegam na pasta de spam, como resolver

Isso acontece quando o domínio não tem SPF e DKIM configurados e o provedor de destino não confia no remetente. Publique os registros SPF e DKIM do seu provedor de envio no DNS do domínio para autenticar as mensagens e fazê-las chegar na caixa de entrada.

### O AIOS avisa por e-mail quando um arquivo é alterado

Sim, o recurso de file change detection do scanner pode enviar um e-mail quando detecta arquivos modificados. Em WP Security, abra o scanner, habilite a detecção de alteração de arquivos e marque o aviso por e-mail com um endereço de destino válido para receber o alerta.

### Mudei de hospedagem e os alertas do AIOS pararam, por quê

A troca de servidor costuma alterar como o e-mail é entregue, derrubando o envio pela função mail do PHP ou invalidando um SMTP antigo. Reconfigure o envio de e-mail no novo ambiente e faça um teste real de bloqueio no AIOS para confirmar que o alerta voltou a chegar.

**Fonte:** [All-In-One Security (AIOS) — Documentação oficial (TeamUpdraft)](https://teamupdraft.com/documentation/all-in-one-security/)
