O que é MTA-STS?
MTA-STS (Mail Transfer Agent Strict Transport Security) é um padrão de segurança de email definido na RFC 8461. Permite que o proprietário de um domínio declare que os seus servidores de email suportam encriptação TLS e obrigue os servidores remetentes a recusar a entrega em vez de enviar uma mensagem sem encriptação.
O problema que ele resolve é antigo. O SMTP negocia o TLS de forma oportunista: se o comando STARTTLS falha, a mensagem é enviada mesmo assim, sem encriptação. Um atacante posicionado no caminho de rede explora essa tolerância: remove o STARTTLS e força um envio em texto puro que pode intercetar, o chamado ataque de downgrade. O MTA-STS elimina esse retrocesso. Sem um TLS válido até aos seus servidores MX, o email simplesmente não é entregue.
Além de proteger contra a interceção e os ataques man-in-the-middle, publicar o MTA-STS sinaliza que o seu domínio aplica as boas práticas de encriptação em trânsito. O Google e o Microsoft 365 oferecem suporte do lado remetente e o combinam com o TLS-RPT para reportar as falhas de ligação.
Componentes MTA-STS
Uma configuração MTA-STS apoia-se em dois elementos publicados separadamente: um registo DNS que anuncia a política e a própria política, alojada em HTTPS. Os dois têm de permanecer coerentes para que um servidor remetente aplique as suas regras.
1. Registo DNS
Um registo TXT publicado em _mta-sts.seudominio.pt anuncia que o seu domínio suporta MTA-STS:
_mta-sts.exemplo.pt. IN TXT "v=STSv1; id=20240115120000"
- v=STSv1: versão do protocolo (sempre
STSv1) - id: identificador da versão atual; altere-o a cada atualização da política
2. Ficheiro de política
A política é um ficheiro de texto alojado em https://mta-sts.seudominio.pt/.well-known/mta-sts.txt:
version: STSv1
mode: enforce
mx: mail.exemplo.pt
mx: *.backup-mail.exemplo.pt
max_age: 604800
A diretiva mx pode aparecer várias vezes para listar todos os seus servidores de receção. O campo mode aceita enforce, testing ou none.
Lista de verificação de implantação
Implante o MTA-STS nesta ordem: primeiro a política e o seu certificado HTTPS, só depois o registo DNS. Enquanto a política não estiver acessível, o registo não tem efeito: os servidores remetentes não têm nada a aplicar.
Passo 1: Configurar o host da política
- Crie um subdomínio:
mta-sts.seudominio.pt - Obtenha um certificado HTTPS (o Let's Encrypt funciona)
- Configure o seu servidor web para servir o ficheiro de política
Passo 2: Criar e alojar o ficheiro de política
- Use o gerador acima para criar a sua política
- Guarde o ficheiro com o nome
mta-sts.txt - Aloje-o em
/.well-known/mta-sts.txt
Passo 3: Adicionar o registo DNS
- Gere o registo DNS com a ferramenta acima
- Adicione-o ao seu DNS como registo TXT em
_mta-sts
Passo 4: Testar e monitorizar
- Valide a sua configuração com o Verificador MTA-STS
- Permaneça no modo testing enquanto identifica os problemas
- Mude para o modo enforce assim que a configuração for confirmada
FAQ - Perguntas frequentes
P: O que é MTA-STS e porque preciso dele?
R: MTA-STS (Mail Transfer Agent Strict Transport Security) é um padrão definido na RFC 8461 que permite que o proprietário de um domínio declare que os seus servidores de email exigem TLS. Sem ele, o SMTP cai para texto puro assim que a negociação TLS falha, algo que um atacante pode provocar para intercetar as mensagens. O MTA-STS elimina esse retrocesso e protege os seus emails recebidos contra a interceção e os ataques man-in-the-middle.
P: Qual é a diferença entre os modos testing e enforce?
R: No modo testing, os servidores remetentes relatam as falhas via TLS-RPT mas entregam a mensagem mesmo que o TLS falhe: nada é bloqueado, apenas observa. No modo enforce, eles devem estabelecer uma ligação TLS válida ou recusar a entrega. Comece sempre em testing para verificar que todos os seus servidores MX respondem em TLS, depois mude para enforce.
P: Como implanto o ficheiro de política MTA-STS?
R: Aloje o ficheiro de política em https://mta-sts.seudominio.pt/.well-known/mta-sts.txt. O subdomínio mta-sts deve apresentar um certificado HTTPS válido, servir o ficheiro com o cabeçalho Content-Type: text/plain e permanecer acessível sem redirecionamento. Basta uma dessas condições faltar para que a política seja ignorada.
P: Qual valor max_age devo usar?
R: A diretiva max_age define por quanto tempo, em segundos, os remetentes mantêm a sua política em cache. Os valores comuns vão de 86400 (1 dia) na fase de testing a 604800 (1 semana) em produção, até 31557600 (1 ano) para uma configuração estável. Evite descer abaixo de 86400: alguns fornecedores como o Gmail ignoram uma política com cache demasiado curto.
P: Posso usar wildcards em padrões MX?
R: Sim. O MTA-STS aceita um asterisco (*) como o rótulo mais à esquerda de um padrão MX. Por exemplo, *.mail.exemplo.pt corresponde a qualquer subdomínio de mail.exemplo.pt, o que evita listar cada servidor um a um.
P: Também preciso de um registo TLS-RPT?
R: Não é obrigatório, mas é altamente recomendado. Um registo TLS-RPT (RFC 8460) pede aos servidores remetentes que lhe enviem um relatório diário das falhas de ligação TLS. É a sua única visibilidade sobre o que o MTA-STS bloqueia ou deixa passar: sem ele, um problema de certificado passa despercebido.
P: Como configuro MTA-STS para Microsoft 365 / Office 365?
R: Introduza o seu domínio no gerador, escolha o modo (comece com testing) e adicione o padrão MX *.mail.protection.outlook.com, que cobre os servidores Exchange Online. Copie o registo DNS TXT e aloje o ficheiro de política no subdomínio mta-sts do seu domínio.
P: Como configuro MTA-STS para Google Workspace?
R: Introduza o seu domínio e adicione os padrões MX que o seu domínio publica realmente: smtp.google.com para um domínio Workspace recente (MX único com prioridade 1 desde 2023), ou o conjunto histórico aspmx.l.google.com para o MX principal, *.aspmx.l.google.com para os quatro MX alternativos e *.googlemail.com para os de reserva. O gerador produz o registo DNS TXT e o ficheiro de política prontos para implantar.
Pronto para travar a sua encriptação em trânsito? Gere a sua configuração acima, implante a política e valide tudo com o Verificador MTA-STS.
Ferramentas complementares
| Ferramenta | Descrição |
|---|---|
| Verificador MTA-STS | Valide a configuração MTA-STS publicada no seu domínio |
| Validador de sintaxe MTA-STS | Verifique a sintaxe MTA-STS offline, antes de publicar |
| Gerador DMARC | Crie o registo DMARC do seu domínio |
| Alojamento MTA-STS | Aloje a sua política MTA-STS gratuitamente |
Recursos úteis
- RFC 8461 - SMTP MTA Strict Transport Security (especificação oficial do MTA-STS)
- RFC 8460 - SMTP TLS Reporting (TLS-RPT, o relatório recomendado junto com o MTA-STS)
- Documentação MTA-STS do Google (guia do Google Workspace para ativar o MTA-STS)