Pular para o conteúdo

Configurar Postfix como Relay de E-mail para Gmail no Ubuntu 24.04

Por Equipe Técnica AviraHost · 13 min de leitura · Atualizado em · Postfix, Gmail, Ubuntu 24.04, SMTP, Email Relay, AviraHost · 0

Configurar Postfix como Relay de E-mail para Gmail no Ubuntu 24.04 é o processo de direcionar o envio de mensagens do sistema operacional, alertas de monitoramento e aplicações locais através da infraestrutura SMTP do Google com autenticação SASL e criptografia TLS. Para realizar a configuração de forma eficiente e segura, siga estes passos:

  1. Instale o Postfix, o pacote mailutils e as bibliotecas de autenticação SASL no Ubuntu 24.04.
  2. Gere uma Senha de App dedicada na sua Conta Google com verificação em duas etapas ativada.
  3. Defina as credenciais do Gmail no arquivo seguro de mapeamento SASL e compile a base com postmap.
  4. Ajuste os parâmetros de relayhost, TLS e autenticação no arquivo de configuração principal do Postfix.
  5. Reinicie o serviço e valide a entrega de notificações monitorando o registro de eventos no journalctl.

Pré-requisitos do sistema

Antes de iniciar a configuração do serviço de e-mail, certifique-se de que o seu ambiente atende às seguintes exigências técnicas:

  • Servidor rodando Ubuntu 24.04 LTS com privilégios de superusuário (acesso sudo ou root).
  • Conta do Google (Gmail comum ou Google Workspace) com verificação em duas etapas (2FA) devidamente ativada.
  • Senha de App de 16 caracteres gerada no painel de segurança da Conta Google (senhas comuns da conta não são aceitas pelo SMTP).
  • Porta de saída 587 (TCP) liberada no firewall do servidor e na rede para conexões externas destinadas aos servidores do Google.
  • Nome de domínio totalmente qualificado (FQDN) configurado como hostname da máquina é recomendado (ex.: servidor.seudominio.com.br); se não estiver disponível, configure explicitamente myhostname, mydomain e myorigin no main.cf.

Instalação dos pacotes e bibliotecas SASL

O encaminhamento de e-mails via servidores externos exige a presença de módulos específicos de autenticação além do agente de transporte básico. No Ubuntu 24.04, o gerenciador APT fornece o Postfix e as bibliotecas necessárias para negociar a autenticação SASL com a infraestrutura do Google.

Atualize a lista de repositórios locais e instale os pacotes postfix, mailutils, libsasl2-modules, ca-certificates e netcat-openbsd executando o comando a seguir:

sudo apt update && sudo apt install postfix mailutils libsasl2-modules ca-certificates netcat-openbsd -y

Durante a execução do assistente interativo de configuração de pacotes debconf, você verá uma tela solicitando o tipo genérico de configuração de e-mail. Utilize as seguintes seleções:

  • Tipo geral de configuração de correio: Escolha Internet Site (Site da Internet).
  • Nome do sistema de correio: Insira o FQDN do servidor ou o seu domínio de envio, como seudominio.com.br.

Caso o instalador não exiba as telas interativas ou você precise reconfigurar essas respostas posteriormente, é possível consultar o Guia: como configurar Postfix para e-mail externo Ubuntu 24.04 para entender a estrutura de pacotes base do sistema.

Criação do arquivo de credenciais sasl_passwd

A autenticação com o relay SMTP externo requer o armazenamento seguro do endereço de envio e do token de acesso do Google. O Postfix consulta esses dados a partir de uma tabela indexada pelo comando postmap.

Crie o arquivo de credenciais /etc/postfix/sasl_passwd utilizando o seu editor de texto preferido:

sudo nano /etc/postfix/sasl_passwd

Adicione a seguinte linha no arquivo, substituindo [email protected] pela sua conta real do Gmail ou Google Workspace e sua_senha_de_app pela senha de app de 16 caracteres gerada no Google (sem espaços):

[smtp.gmail.com]:587 [email protected]:sua_senha_de_app

Os colchetes em [smtp.gmail.com]:587 informam ao Postfix que ele não deve buscar registros MX para esse endereço, conectando-se diretamente ao host especificado via resolução A/AAAA.

Atenção: Como este arquivo armazena credenciais confidenciais em formato legível, restrinja o acesso imediatamente para que nenhum outro usuário do sistema possa ler seu conteúdo:

sudo chmod 600 /etc/postfix/sasl_passwd
sudo chown root:root /etc/postfix/sasl_passwd

Em seguida, compile o arquivo para gerar o mapa indexado no formato Berkeley DB (sasl_passwd.db):

sudo postmap /etc/postfix/sasl_passwd

Ajuste também as permissões do arquivo binário gerado para manter o isolamento de segurança:

sudo chmod 600 /etc/postfix/sasl_passwd.db
sudo chown root:root /etc/postfix/sasl_passwd.db

Ajuste dos parâmetros do Postfix em main.cf

As diretivas do agente de transferência no arquivo /etc/postfix/main.cf controlam como as mensagens são direcionadas, quais portas são acionadas e que nível de segurança criptográfica é imposto no canal de envio.

Abra o arquivo principal de configuração para edição:

sudo nano /etc/postfix/main.cf

Localize a diretiva relayhost e modifique-a para apontar para o servidor do Gmail na porta 587. Caso existam valores anteriores, substitua-os:

relayhost = [smtp.gmail.com]:587

Ao final do arquivo, adicione o bloco com os parâmetros de autenticação SASL e segurança TLS recomendados para a comunicação com a API de transporte do Google. Se alguma dessas diretivas já existir no arquivo, edite a linha existente em vez de duplicá-la — o Postfix emitirá um aviso overriding earlier entry caso encontre entradas repetidas:

# Parametros de Autenticacao SASL
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous

# Configuracoes de Criptografia TLS
smtp_tls_security_level = verify
smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt

# Protocolos IP (evita tentativas IPv6 sem rota externa)
inet_protocols = ipv4

A imposição do valor smtp_tls_security_level = verify garante que nenhuma credencial ou mensagem saia do host sem uma sessão TLS ativa e que o certificado apresentado pelo servidor remoto seja validado contra as autoridades certificadoras do sistema. O direcionamento explícito de inet_protocols = ipv4 previne atrasos em servidores que não possuem roteamento IPv6 externo funcional configurado.

Após salvar as alterações no arquivo, verifique a consistência dos parâmetros com a ferramenta interna de diagnóstico do Postfix:

sudo postfix check

Se nenhuma mensagem de erro for exibida na saída, aplique as novas configurações reiniciando o serviço:

sudo systemctl restart postfix

Confirme se o serviço está em execução ativa no Ubuntu 24.04. No empacotamento do Ubuntu, a instância que executa os processos de entrega é [email protected]; use o comando abaixo para verificá-la diretamente:

sudo systemctl status [email protected] --no-pager

A saída esperada deve indicar o status do serviço como ativo e em execução:

● [email protected] - Postfix Mail Transport Agent (instance -)
     Loaded: loaded (/usr/lib/systemd/system/[email protected]; enabled; preset: enabled)
     Active: active (running)
   Main PID: 12451 (master)
      Tasks: 3 (limit: 4915)
     CGroup: /system.slice/system-postfix.slice/[email protected]
             ├─12451 /usr/lib/postfix/sbin/master -w
             ├─12452 pickup -l -t unix -u
             └─12453 qmgr -l -t unix -u

Teste prático e validação da entrega de mensagens

Com o serviço rodando e configurado, envie um e-mail de teste para verificar se o relay está autenticando e entregando mensagens corretamente ao destino final.

Utilize o utilitário mail para despachar uma mensagem de teste simples para um endereço externo:

echo "Este e um teste de envio via Postfix e Gmail no Ubuntu 24.04." | mail -s "Teste de Relay Postfix" [email protected]

Para acompanhar o ciclo de entrega e eventuais respostas do servidor do Google, consulte os logs do Postfix com o comando:

sudo journalctl -u postfix@- -n 20 --no-pager

Quando a autenticação e a entrega ocorrem com sucesso, o registro exibe o status de envio bem-sucedido semelhante ao bloco abaixo:

postfix/pickup[12452]: 4YhKz10...: uid=1000 from=<usuario>
postfix/cleanup[12458]: 4YhKz10...: message-id=<[email protected]>
postfix/qmgr[12453]: 4YhKz10...: from=<[email protected]>, size=462, nrcpt=1 (queue active)
postfix/smtp[12460]: 4YhKz10...: to=<[email protected]>, relay=smtp.gmail.com[142.250.102.108]:587, delay=1.4, delays=0.04/0.02/0.65/0.69, dsn=2.0.0, status=sent (250 2.0.0 OK)
postfix/qmgr[12453]: 4YhKz10...: removed from queue

A informação status=sent (250 2.0.0 OK) comprova que o Google aceitou a mensagem para distribuição. Caso você precise de uma configuração completa de recebimento e envio sem intermediação de terceiros, consulte o guia sobre Como configurar servidor de email no Ubuntu 24.04.

Problemas comuns e como resolver

Sintoma: 535-5.7.8 Username and Password not accepted

Causa: As credenciais fornecidas no arquivo /etc/postfix/sasl_passwd estão incorretas, a senha comum da conta foi usada em vez de uma Senha de App, ou a autenticação em duas etapas não está habilitada na conta Google.
Solução: Acesse as configurações de segurança da sua Conta Google, gere uma nova Senha de App de 16 caracteres, atualize o arquivo /etc/postfix/sasl_passwd, execute sudo postmap /etc/postfix/sasl_passwd e reinicie o serviço com sudo systemctl restart postfix.

Sintoma: Connection timed out na porta 587

Causa: Regras de firewall no host (UFW) ou restrições impostas pelo provedor de rede estão bloqueando o tráfego de saída na porta TCP 587.
Solução: Verifique as regras locais com sudo ufw status e libere o tráfego de saída se necessário. Teste a conectividade com o comando nc -zv smtp.gmail.com 587 para confirmar se a porta consegue estabelecer o handshake TCP.

Sintoma: Relay access denied ao submeter mensagens

Causa: Este erro ocorre quando um cliente externo (aplicação em outro host ou contêiner) tenta enviar mensagens via SMTP diretamente ao Postfix local e não está incluído na diretiva mynetworks nem autenticado via SASL no smtpd.
Solução: Inclua a rede ou o IP do cliente em mynetworks no main.cf, ou habilite autenticação SASL no smtpd para esses clientes. Para detalhes adicionais sobre tratamento desse erro, consulte as instruções em Passo a passo: Relay access denied no Postfix, como corrigir.

Perguntas frequentes

É obrigatório usar senha de app do Google no Postfix?

Para esta configuração baseada em autenticação por senha (smtp_sasl_password_maps), é necessário usar uma Senha de App quando ela estiver disponível. O Google desativou o suporte a aplicativos menos seguros e exige verificação em duas etapas ativada para gerar uma senha de app de 16 caracteres. Em ambientes corporativos onde senhas de app estejam bloqueadas por política do Google Workspace, utilize OAuth 2.0 ou o serviço SMTP Relay do Google Workspace conforme a política da sua organização.

Qual porta SMTP deve ser utilizada para o relay do Gmail?

A porta padrão recomendada é a 587 com criptografia STARTTLS. Ela oferece ampla compatibilidade e evita bloqueios comuns de provedores na porta 25.

Por que o arquivo sasl_passwd precisa de permissão 600?

O arquivo contém credenciais em texto simples com seu usuário e senha de app. Definir a permissão 600 garante que apenas o usuário root consiga ler esses dados sensíveis.

Onde verificar os logs em caso de erro no envio pelo Postfix?

No Ubuntu 24.04, os logs de entrega do Postfix podem ser acompanhados em tempo real executando o comando journalctl -u postfix@- -f ou consultando o arquivo /var/log/mail.log caso o rsyslog esteja instalado.

Conclusão

  • Mantenha as credenciais do Gmail protegidas com permissão 600 no arquivo de senhas e reconstrua a base indexada com postmap sempre que houver alteração.
  • Force o uso de TLS com verificação de certificado configurando smtp_tls_security_level = verify e smtp_tls_CAfile apontando para as CAs do sistema, garantindo a autenticidade do servidor e o sigilo do tráfego entre seu servidor e o Google.
  • Monitore a fila local periodicamente com o comando mailq para identificar envios represados ou eventuais limites de cota da conta de envio.

Leia também

Precisa de ajuda com servidores de e-mail e infraestrutura?

Mantenha seus alertas operacionais e serviços de correio eletrônico sempre disponíveis com desempenho estável e suporte técnico especializado para o seu ambiente Linux.

Conheça nossos planos de Servidor VPS


Esta resposta foi útil?