Poupe até 53% em Servidores VPS, escolha agora. Oferta limitada.

Guia: como configurar Postfix para e-mail externo Ubuntu 24.04

17 min de leitura  ·  Guia técnico

Como configurar Postfix para enviar e-mail externo no Ubuntu 24.04 LTS é o processo de preparar o Postfix como agente de envio SMTP para que aplicações, scripts e contas locais consigam entregar mensagens para domínios fora do servidor. Para fazer a configuração básica com segurança, siga estes passos:

  1. Atualize o Ubuntu 24.04 LTS e instale os pacotes do Postfix e ferramentas de teste.
  2. Defina o servidor como Internet Site, informe o hostname correto e ajuste o domínio de origem.
  3. Revise o arquivo /etc/postfix/main.cf com myhostname, myorigin, mydestination e inet_interfaces.
  4. Reinicie o Postfix, valide o status do serviço e envie um e-mail externo de teste.
  5. Confira /var/log/mail.log e ajuste DNS, porta SMTP ou relay autenticado conforme o erro retornado.

Pré-requisitos para configurar Postfix para enviar e-mail externo no Ubuntu 24.04 LTS

Envio SMTP externo com Postfix exige que o servidor tenha identidade coerente, acesso administrativo e um domínio configurável. Antes de alterar o MTA, confirme se você tem acesso root ou usuário com sudo, Ubuntu 24.04 LTS instalado, um domínio próprio, acesso ao painel DNS e um hostname que represente o servidor, como mail.seudominio.com.br. Se ainda estiver validando o acesso SSH ao ambiente, veja também Acessando servidores VPS Linux da AviraHost.

  • Sistema: Ubuntu 24.04 LTS com pacotes atualizáveis pelo apt.
  • Acesso: terminal via SSH com permissão para instalar pacotes e editar arquivos em /etc/postfix.
  • Domínio: domínio próprio com controle sobre registros MX, TXT SPF, DKIM e DMARC quando aplicável.
  • Hostname: nome completo do servidor, preferencialmente no formato mail.seudominio.com.br.
  • Rede: conectividade SMTP de saída. Para entrega direta entre servidores, a porta 25 precisa estar disponível.
  • Ferramenta de teste: mailutils ou utilitário equivalente para enviar mensagens pela linha de comando.

Atenção: este artigo foca no envio externo com Postfix. Se você precisa de um servidor completo para caixas IMAP, POP3, webmail e autenticação de usuários, use este conteúdo junto com um guia de servidor de e-mail mais amplo, como Passo a passo para configurar servidor de e-mail no VPS Linux.

Instalar Postfix no Ubuntu 24.04 LTS para envio externo

Postfix no Ubuntu é instalado pelo apt e normalmente abre uma tela de configuração durante o processo. Ao rodar este comando, você verá a seleção do tipo de servidor de e-mail. Para um servidor que envia mensagens diretamente para outros domínios, escolha Internet Site. No campo de nome do sistema de e-mail, informe o domínio ou hostname que fará sentido para os destinatários, como seudominio.com.br ou mail.seudominio.com.br.

sudo apt update
sudo apt install postfix mailutils
Output esperado:
Lendo listas de pacotes... Pronto
Construindo árvore de dependências... Pronto
Os seguintes NOVOS pacotes serão instalados:
postfix mailutils
Configuração do Postfix:
Tipo geral de configuração de e-mail: Internet Site
Nome do sistema de e-mail: seudominio.com.br

Depois da instalação, confirme se o serviço foi criado e está ativo. Esse teste evita avançar para DNS ou autenticação antes de saber se o daemon do Postfix está executando corretamente no sistema. Em servidores recém-instalados, é comum o serviço já iniciar automaticamente após a instalação do pacote.

systemctl status postfix
Output esperado:
postfix.service - Postfix Mail Transport Agent
Active: active (exited)
Started Postfix Mail Transport Agent

Se a tela de configuração não apareceu ou você escolheu a opção errada, reconfigure o pacote. Essa ação não apaga mensagens por si só, mas altera parâmetros iniciais do Postfix, então revise os valores antes de confirmar.

sudo dpkg-reconfigure postfix
Output esperado:
Configuração do Postfix
Tipo geral de configuração de e-mail: Internet Site
Nome do sistema de e-mail: seudominio.com.br

Ajustar o arquivo main.cf para Postfix enviar e-mail externo

A configuração do Postfix para domínio externo fica principalmente em /etc/postfix/main.cf. Antes de editar, crie uma cópia de segurança do arquivo atual. Isso permite voltar ao estado anterior caso um parâmetro seja inserido incorretamente e o serviço deixe de carregar. Os valores abaixo são uma base para envio externo simples: o servidor se identifica por um hostname, usa um domínio de origem e aceita mensagens locais para encaminhamento conforme a configuração do próprio sistema.

Atenção: não substitua o arquivo main.cf inteiro sem revisar o conteúdo existente. Em servidores que já enviam mensagens, uma alteração indevida pode interromper aplicações, formulários e notificações.

sudo cp /etc/postfix/main.cf /etc/postfix/main.cf.bak
ls -l /etc/postfix/main.cf.bak
Output esperado:
-rw-r--r-- 1 root root ... /etc/postfix/main.cf.bak

Agora ajuste os principais parâmetros com postconf. Troque mail.seudominio.com.br e seudominio.com.br pelos dados reais do seu domínio. O myhostname define como o servidor se apresenta, myorigin define o domínio usado como origem padrão, mydestination controla quais destinos são tratados como locais e inet_interfaces define em quais interfaces o Postfix escuta.

sudo postconf -e "myhostname = mail.seudominio.com.br"
sudo postconf -e "myorigin = seudominio.com.br"
sudo postconf -e "mydestination = localhost, localhost.localdomain, mail.seudominio.com.br, seudominio.com.br"
sudo postconf -e "inet_interfaces = all"
sudo postconf -e "inet_protocols = ipv4"
Output esperado:
Sem saída quando os parâmetros são gravados com sucesso.

Confira a configuração ativa antes de reiniciar. Ao rodar este comando, você verá os valores efetivamente carregados pelo Postfix, o que ajuda a detectar erro de digitação no hostname, domínio de origem ou destino local.

postconf -n | grep -E "myhostname|myorigin|mydestination|inet_interfaces|inet_protocols"
Output esperado:
inet_interfaces = all
inet_protocols = ipv4
mydestination = localhost, localhost.localdomain, mail.seudominio.com.br, seudominio.com.br
myhostname = mail.seudominio.com.br
myorigin = seudominio.com.br

Por fim, reinicie o serviço e verifique se não há erro de sintaxe. Se o status retornar ativo, a etapa local do Postfix está pronta para o teste de envio.

sudo systemctl restart postfix
systemctl status postfix
Output esperado:
postfix.service - Postfix Mail Transport Agent
Active: active (exited)

Configurar DNS para melhorar entrega de e-mail externo

Registros DNS para e-mail são essenciais para que provedores externos consigam avaliar se o servidor está autorizado a enviar mensagens pelo domínio. O Postfix pode tentar enviar sem todos os registros de autenticação, mas a aceitação em caixas como Gmail, Outlook e outros provedores depende de uma configuração coerente de domínio. No mínimo, revise o registro MX do domínio e o TXT SPF; quando aplicável, adicione DKIM e DMARC para autenticação e política de tratamento.

  • MX: aponta qual servidor recebe e-mail do domínio. Para um servidor próprio, normalmente aponta para mail.seudominio.com.br.
  • A: faz mail.seudominio.com.br resolver para o IP do servidor.
  • SPF: informa quais servidores estão autorizados a enviar e-mail pelo domínio.
  • DKIM: adiciona assinatura criptográfica para validar a origem da mensagem quando configurado.
  • DMARC: orienta o tratamento de mensagens que falham em SPF ou DKIM.

Para aprofundar a parte de autenticação de domínio, consulte Guia DKIM, SPF e DMARC: configure e saia do spam. A configuração de DNS não substitui o Postfix, mas complementa a reputação técnica do envio. Sem DNS adequado, o envio pode até sair do servidor, porém ser recusado, atrasado ou classificado como spam no destino.

Após publicar ou alterar registros DNS, valide se o servidor enxerga o domínio correto. O comando abaixo consulta registros básicos e ajuda a identificar erros de digitação no nome do host.

dig MX seudominio.com.br
dig A mail.seudominio.com.br
dig TXT seudominio.com.br
Output esperado:
seudominio.com.br. MX mail.seudominio.com.br.
mail.seudominio.com.br. A IP_DO_SERVIDOR
seudominio.com.br. TXT "v=spf1 ..."

Testar envio de e-mail externo com Postfix

Teste de envio pelo terminal é a forma mais direta de confirmar se o Postfix está aceitando a mensagem local, colocando na fila e tentando entregar ao servidor remoto. Use um destinatário real que você consiga verificar, preferencialmente fora do domínio do servidor, para validar o envio externo de fato. Durante o teste, acompanhe o log em outra sessão SSH para ver a evolução da mensagem.

echo "Teste de envio externo pelo Postfix no Ubuntu 24.04 LTS" | mail -s "Teste Postfix" [email protected]
Output esperado:
Sem saída no terminal quando a mensagem é aceita localmente para envio.

Em seguida, confira o log. Ao rodar este comando, você verá linhas indicando que a mensagem entrou na fila e se houve tentativa de entrega. O campo status é o ponto mais importante: sent indica aceite pelo próximo servidor, deferred indica adiamento e bounced indica rejeição.

sudo tail -n 50 /var/log/mail.log
Output esperado:
postfix/pickup: uid=...
postfix/cleanup: message-id=...
postfix/qmgr: from=<[email protected]>, size=...
postfix/smtp: to=<[email protected]>, relay=..., status=sent

Se a mensagem ficar na fila, liste os itens pendentes. Isso ajuda a saber se o problema está na entrega remota, na resolução DNS, na conectividade de porta ou em uma rejeição temporária.

mailq
Output esperado:
Mail queue is empty

Usar relay SMTP autenticado quando a porta 25 não entrega

Relay SMTP autenticado é uma alternativa quando o provedor bloqueia a saída direta pela porta 25 ou quando você prefere enviar por um serviço SMTP já autorizado. Nesse cenário, o Postfix não entrega diretamente para Gmail, Outlook ou outros servidores finais; ele autentica em um provedor SMTP e repassa a mensagem por ele. A porta comum nesse tipo de configuração é 587 com TLS, dependendo do provedor usado.

Atenção: as credenciais SMTP ficam em arquivo local. Proteja o arquivo com permissões restritas e nunca reutilize senha administrativa do painel, banco de dados ou conta root.

sudo postconf -e "relayhost = smtp.provedor.com:587"
sudo postconf -e "smtp_sasl_auth_enable = yes"
sudo postconf -e "smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd"
sudo postconf -e "smtp_sasl_security_options = noanonymous"
sudo postconf -e "smtp_tls_security_level = may"
Output esperado:
Sem saída quando os parâmetros são gravados com sucesso.

Crie o arquivo de senha no formato exigido pelo Postfix. Substitua os valores pelo servidor SMTP, usuário e senha fornecidos pelo seu provedor.

echo "smtp.provedor.com:587 [email protected]:senha_smtp" | sudo tee /etc/postfix/sasl_passwd
sudo postmap /etc/postfix/sasl_passwd
sudo chmod 600 /etc/postfix/sasl_passwd /etc/postfix/sasl_passwd.db
sudo systemctl restart postfix
Output esperado:
smtp.provedor.com:587 [email protected]:senha_smtp
Postfix reiniciado sem erros.

Faça novo envio de teste e acompanhe o log. Se o relay aceitar a autenticação, o log mostrará conexão com smtp.provedor.com e status de envio conforme a resposta do provedor.

echo "Teste via relay SMTP autenticado" | mail -s "Teste relay Postfix" [email protected]
sudo tail -n 50 /var/log/mail.log
Output esperado:
postfix/smtp: to=<[email protected]>, relay=smtp.provedor.com, status=sent

Problemas comuns e como resolver

Sintoma: Postfix envia e-mail local, mas não envia para Gmail ou Outlook

Causa: as causas mais comuns são bloqueio de porta SMTP, hostname incorreto, ausência de autenticação DNS ou rejeição pelo servidor de destino. Solução: verifique o status do Postfix, teste a conectividade da porta usada, revise myhostname e confira /var/log/mail.log para identificar o código real de rejeição antes de alterar várias opções ao mesmo tempo.

systemctl status postfix
sudo tail -n 80 /var/log/mail.log
Output esperado:
Active: active
Linhas do postfix/smtp com status sent, deferred ou bounced.

Sintoma: mensagens ficam presas na fila do Postfix

Causa: a fila pode acumular quando o destino não responde, quando há falha temporária de DNS, quando a porta de saída está indisponível ou quando o servidor remoto adia a entrega. Solução: liste a fila com mailq, leia o motivo no log e só force nova tentativa depois de corrigir a causa indicada.

mailq
sudo tail -n 100 /var/log/mail.log
Output esperado:
Lista de mensagens pendentes ou Mail queue is empty.
Motivo de adiamento indicado no log.

Sintoma: remetente aparece como usuário local ou domínio errado

Causa: myorigin, myhostname ou o envelope gerado pela aplicação estão inconsistentes com o domínio real. Solução: ajuste o domínio de origem no Postfix e teste novamente com um remetente coerente. Se a aplicação define o remetente manualmente, revise também a configuração do sistema que dispara o e-mail.

postconf -n | grep -E "myhostname|myorigin"
sudo postconf -e "myorigin = seudominio.com.br"
sudo systemctl restart postfix
Output esperado:
myhostname = mail.seudominio.com.br
myorigin = seudominio.com.br
Postfix reiniciado sem erros.

Sintoma: servidor externo rejeita por falta de autenticação do domínio

Causa: o domínio pode não ter SPF, DKIM ou DMARC coerentes com o servidor que está enviando. Solução: ajuste os registros DNS e valide novamente. A correção pode depender de propagação DNS e da política do provedor de destino, então acompanhe os logs e faça testes graduais.

dig TXT seudominio.com.br
dig MX seudominio.com.br
Output esperado:
Registro TXT SPF publicado.
Registro MX apontando para o servidor de e-mail correto.

Perguntas frequentes sobre Como configurar Postfix para enviar e-mail externo no Ubuntu 24.04 LTS

Como configurar Postfix para enviar e-mail externo no Ubuntu 24.04 LTS?

Instale o Postfix, defina o tipo de configuração como Internet Site, ajuste o hostname do servidor e configure o domínio de origem em /etc/postfix/main.cf. Depois, reinicie o serviço e teste o envio com uma ferramenta de linha de comando, conferindo os logs em /var/log/mail.log.

Preciso configurar DNS para o Postfix enviar e-mail externo?

Sim. Para melhorar a aceitação das mensagens, o domínio deve ter registros DNS coerentes, especialmente MX, SPF, DKIM e DMARC quando aplicável. Sem autenticação de domínio, provedores externos podem rejeitar ou classificar os e-mails como spam.

Por que o Postfix envia e-mail local, mas não envia para Gmail ou Outlook?

As causas mais comuns são bloqueio de porta SMTP, hostname incorreto, ausência de autenticação DNS ou rejeição pelo servidor de destino. Verifique o status do serviço, teste conectividade na porta SMTP usada e analise /var/log/mail.log para identificar o código de erro real.

Qual porta usar para enviar e-mail externo com Postfix?

Para entrega direta entre servidores SMTP, o Postfix normalmente usa a porta 25. Em cenários com relay autenticado, é comum usar portas como 587 com TLS, dependendo do provedor SMTP configurado.

Como ver se o Postfix está funcionando no Ubuntu 24.04?

Use systemctl status postfix para verificar se o daemon está ativo e acompanhe /var/log/mail.log durante um envio de teste. Um envio bem-sucedido normalmente mostra a mensagem passando pela fila e sendo entregue ou aceita pelo servidor remoto.

Conclusão

Configurar Postfix para envio externo no Ubuntu 24.04 LTS envolve três frentes: serviço local funcionando, identidade correta do servidor e DNS coerente para o domínio. Quando algo falhar, o log em /var/log/mail.log deve ser a primeira fonte de diagnóstico, porque ele mostra a resposta real do Postfix e do servidor remoto.

  • Defina myhostname e myorigin com valores reais do domínio antes de testar envios externos.
  • Publique e valide MX, SPF, DKIM e DMARC quando o domínio for usado em produção.
  • Use relay SMTP autenticado se a entrega direta pela porta 25 não estiver disponível no seu ambiente.

Leia também

Precisa de ajuda com Postfix no Ubuntu 24.04 LTS?

Um servidor bem configurado reduz falhas de envio, facilita o diagnóstico por logs e cria uma base mais estável para aplicações que dependem de e-mail transacional. Se você quer um ambiente com controle de sistema, DNS e serviços de rede, um VPS pode ser o caminho mais flexível.

Conheça os planos de Servidor VPS da AviraHost

  • 0 Os usuários acharam isso útil
  • postfix, smtp, email, ubuntu, dns, AviraHost
Esta resposta foi útil?

Artigos Relacionados

Guia Completo para Configurar E-mails Profissionais no cPanel

Guia Completo para Configurar E-mails Profissionais no cPanel Ter um e-mail profissional é...

Como Configurar DNS Personalizado para Seu Domínio na AviraHost

Como Configurar DNS Personalizado para Seu Domínio na AviraHost Ter um DNS personalizado é...

Como gerenciar um domínio.

Adicione um domínio a sua conta, utilizando nosso painel de gerenciar domínios, Você pode...

Solucionar problemas de resolução de nomes DNS em VPS Linux e servidor dedicado

Introdução Falhas na resolução de nomes DNS podem causar lentidão, indisponibilidade de sites e...

Checklist para Configurar e Testar Limite de E-mails Enviados por Hora no VPS Linux e Servidor Dedicado

Introdução Controlar o volume de e-mails enviados por hora é fundamental para evitar bloqueios...