Alojamento web - Boas práticas de envio de e-mail
Saiba porque a função PHP mail() é desaconselhada num alojamento partilhado e como configurar um envio SMTP autenticado através das suas contas de e-mail OVHcloud
Objetivo
Para que os seus e-mails cheguem corretamente aos seus destinatários, a OVHcloud implementa uma infraestrutura dedicada ao envio de saída, com filtragem anti-spam automática e vigilância contínua da reputação dos servidores. Para tirar pleno partido disto, é recomendado enviar os seus e-mails através de SMTP autenticado em vez da função PHP mail() nativa. Esta abordagem garante que cada e-mail é emitido com uma identidade verificável, o que melhora significativamente a entregabilidade e reduz o risco de classificação como spam.
Este guia apresenta-lhe as boas práticas e recomendações OVHcloud para enviar e-mails de forma fiável e segura a partir de um alojamento partilhado, quer gira um site WordPress, outro CMS ou uma aplicação PHP.
Requisitos
- Dispor de uma oferta de Alojamento web OVHcloud.
- Dispor de um endereço de e-mail associado ao seu nome de domínio (oferta MX Plan, E-mail Pro ou Exchange). Se ainda não tiver nenhum, consulte o guia Criar um endereço de e-mail com a oferta MX Plan.
Acesso à Área de Cliente OVHcloud
- Link direto:
- Percurso de navegação:
Web Cloud>Alojamentos> Selecione o seu alojamento web
Instruções
1. mail() ou SMTP autenticado: qual a diferença para si?
O que a OVHcloud faz para proteger os seus envios
A OVHcloud monitoriza permanentemente a reputação dos seus servidores de envio e filtra automaticamente as mensagens suspeitas — para que os seus e-mails legítimos não sejam prejudicados. Mas esta proteção tem um limite: a função PHP mail() não efetua qualquer controlo sobre a identidade do remetente declarado no e-mail (campo From:). Um e-mail enviado através de mail() pode, por isso, parecer provir de qualquer endereço, o que basta para acionar os filtros dos servidores de destino (Gmail, Outlook, etc.) e comprometer a entregabilidade dos seus próprios envios.
E-mails sem assinatura fiável
A função mail() envia e-mails sem garantir a identidade do remetente. Ora os servidores de destino (Gmail, Outlook, etc.) verificam se o e-mail provém realmente de um servidor autorizado pelo seu domínio, graças aos registos SPF e DKIM. Com mail(), esta verificação falha frequentemente: a mensagem corre então o risco de acabar no spam ou de ser rejeitada.
O envio através de SMTP autenticado resolve este problema: o e-mail é emitido pelo servidor OVHcloud autorizado para o seu domínio, com a assinatura correta.
Uma utilização abusiva da função mail() pode provocar o bloqueio automático dos envios do seu alojamento. Se verificar que os seus e-mails já não são enviados, consulte o guia Seguimento dos e-mails automatizados.
Formulários abertos: mais um vetor de abuso
Um formulário de contacto acessível publicamente, sem mecanismo de proteção, é um alvo privilegiado para os robôs. Estes exploram-no para desencadear o envio de milhares de e-mails em poucos minutos através do seu alojamento, provocando o bloqueio do IP partilhado e prejudicando todos os clientes do cluster.
Implemente as seguintes proteções em qualquer formulário que desencadeie um envio de e-mail:
- Captcha: integre um sistema de verificação (Google reCAPTCHA v3, hCaptcha, ou um cálculo aritmético simples) para bloquear as submissões automatizadas.
- Limitação do débito: limite o número de envios por endereço IP do lado do servidor para evitar os abusos em rajada.
- Validação rigorosa das entradas: verifique e limpe todos os campos do formulário antes de os utilizar num e-mail — nunca confie nos dados introduzidos pelo utilizador.
A ausência de captcha num formulário de envio aberto é uma das causas mais frequentes de bloqueio dos alojamentos partilhados por envio de spam. Esta proteção é indispensável independentemente do método de envio utilizado.
2. A boa prática: utilizar uma conta de e-mail OVHcloud com SMTP autenticado
Princípio
Envie os seus e-mails através de uma ligação SMTP autenticada para o servidor de correio OVHcloud, utilizando uma conta de e-mail associada ao seu domínio (por exemplo contact@mydomain.ovh).
Esta abordagem apresenta três vantagens principais:
- Autenticação garantida: o servidor OVHcloud verifica a sua identidade antes de aceitar o e-mail.
- SPF e DKIM funcionais: o e-mail é emitido por um servidor autorizado para o seu domínio e assinado corretamente.
- Rastreabilidade: cada envio está associado a uma conta identificada, o que permite intervir rapidamente em caso de abuso.
Porque é que o campo From: deve pertencer ao seu domínio
O campo From: do seu e-mail deve obrigatoriamente conter um endereço pertencente ao seu domínio (por exemplo contact@mydomain.ovh), e este endereço deve corresponder à conta SMTP utilizada para a autenticação.
Se o From: não corresponder ao domínio autorizado no registo SPF, ou se a assinatura DKIM não corresponder, os servidores de correio de destino (Gmail, Outlook, etc.) podem rejeitar ou classificar o e-mail como spam.
Para maximizar a entregabilidade, verifique se os registos SPF, DKIM e DMARC estão bem configurados na sua zona DNS. O Gmail e o Yahoo Mail exigem-nos agora para os remetentes em volume. Consulte os nossos guias:
Formulários de contacto: campo From: fixo e Reply-To: do utilizador
Um erro frequente consiste em colocar o endereço de e-mail introduzido pelo utilizador no formulário diretamente no campo From:. Por exemplo, um visitante introduz utilizador@gmail.com e o script utiliza este endereço como remetente.
Este comportamento é incorreto por duas razões:
- O registo SPF do seu domínio não autoriza os servidores Gmail (ou qualquer outro fornecedor terceiro) a enviar em seu nome → falha do controlo SPF.
- Está a enviar "em nome de" um endereço que não lhe pertence → risco elevado de classificação como spam ou de rejeição.
O esquema correto para um formulário de contacto:
Assim, quando responde ao e-mail recebido, o seu cliente de correio envia a resposta para o endereço do utilizador através do campo Reply-To:, sem comprometer a autenticação SPF/DKIM.
Eis como adaptar o exemplo PHPMailer para um formulário de contacto:
Nunca passe diretamente os dados de um formulário para o PHPMailer sem validação prévia. Utilize filter_var() para o endereço de e-mail e htmlspecialchars() + strip_tags() para os campos de texto, de forma a evitar as injeções de cabeçalhos de e-mail.
Parâmetros SMTP OVHcloud
Utilize os seguintes parâmetros para a sua conta de e-mail MX Plan (incluída no alojamento web):
Para as ofertas E-mail Pro ou Exchange, o servidor SMTP é diferente. Consulte a documentação de cada oferta para os parâmetros exatos.
Onde encontrar as suas credenciais SMTP
O nome de utilizador SMTP é o seu endereço de e-mail completo (por exemplo contact@mydomain.ovh).
A palavra-passe é a definida durante a criação do endereço, ou alterada a partir da Área de Cliente OVHcloud. Se a esqueceu ou pretende reiniciá-la, consulte o guia Alterar a palavra-passe de um endereço de e-mail.
A oferta MX Plan incluída no alojamento web está sujeita a quotas de envio (cerca de 200 e-mails por hora por conta). As soluções de correio não foram concebidas para o envio em massa: para volumes importantes — newsletters ou e-mails transacionais em massa — utilize um serviço de envio transacional terceiro, concebido para este fim.
Exemplo de código PHP com PHPMailer
O PHPMailer é a biblioteca PHP de referência para o envio de e-mails através de SMTP. Instale-a através do Composer:
Eis um exemplo completo de envio SMTP autenticado:
Nunca armazene a palavra-passe da sua conta de e-mail em texto simples num ficheiro PHP versionado. Utilize um ficheiro de configuração excluído do seu repositório Git (.gitignore).
Com esta configuração, cada e-mail enviado a partir do seu site é:
- autenticado junto do servidor OVHcloud,
- assinado com os registos SPF e DKIM do seu domínio,
- rastreável em caso de abuso ou de problema de entregabilidade.
3. WordPress e outros CMS: utilizar um plugin SMTP
3.1 O problema com o WordPress por predefinição
A função wp_mail() do WordPress utiliza em segundo plano a função PHP mail(). Herda, por isso, todos os problemas descritos na secção anterior: ausência de autenticação, From: não controlado, risco de spam.
A solução consiste em instalar um plugin SMTP que substitui wp_mail() por uma ligação SMTP autenticada para o seu servidor de correio OVHcloud.
3.2 Configurar o WP Mail SMTP
O WP Mail SMTP é o plugin mais utilizado para esta configuração.
Instalação:
- Na sua administração WordPress, aceda a Plugins > Adicionar novo plugin.
- Procure
WP Mail SMTPe clique em Instalar agora, depois em Ativar.
Configuração:
- Aceda a WP Mail SMTP > Definições no menu de administração.
- Na secção Remetente, preencha os seguintes campos:
- Na secção Mailer, selecione Outro SMTP.
- Preencha os parâmetros SMTP:
- Clique em Guardar definições.
- No separador Ferramentas, utilize Teste de envio de e-mail para verificar a configuração.
Ative a opção Forçar o e-mail do remetente para que todos os e-mails de saída utilizem o endereço configurado, mesmo que um plugin terceiro tente utilizar outro.
3.3 Alternativa: FluentSMTP
O FluentSMTP é uma alternativa leve e gratuita, sem limitação no volume de envio.
Instalação:
- Na sua administração WordPress, aceda a Plugins > Adicionar novo plugin.
- Procure
FluentSMTPe clique em Instalar agora, depois em Ativar.
Configuração:
- Aceda a FluentSMTP > Definições.
- Clique em Adicionar uma ligação e selecione Outro SMTP.
- Preencha os mesmos parâmetros que para o WP Mail SMTP:
- Clique em Guardar a ligação e envie um e-mail de teste.
3.4 Outros CMS (Drupal, Joomla, PrestaShop)
O princípio é idêntico para qualquer CMS ou framework: substituir a função de envio nativa por um módulo ou uma configuração SMTP autenticada.
Em todos os casos, os parâmetros SMTP a utilizar são idênticos: servidor smtp.mail.ovh.net, porta 465 (SSL/TLS) ou 587 (STARTTLS), com autenticação pelo endereço de e-mail completo e a respetiva palavra-passe.
Quer saber mais?
Seguimento dos e-mails automatizados
Melhorar a segurança dos e-mails através do registo SPF
Melhorar a segurança dos e-mails através do registo DKIM
Melhorar a segurança dos e-mails através do registo DMARC
Para prestações especializadas (SEO, desenvolvimento, etc.), contacte os parceiros OVHcloud.
Se pretender obter assistência na utilização e configuração das suas soluções OVHcloud, sugerimos que consulte as nossas diferentes ofertas de suporte.
Fale com a nossa comunidade de utilizadores.