Servidor SMTP POSTFIX ‘From’ header is missing (Faltando Cabeçalho)

Como sempre vamos para o que interessa!!

PROBLEMA:

PRECISEI migrar um SMTP server Postfix(MTA) de uma versão mais antiga para uma mais atual.

Após concluída a instalação do novo servidor de e-mail POSTFIX,  substitui os arquivos de configuração da instalação nova pelos originais do servidor com a versão do POSTFIX mais antiga.

Ao realizar  testes simples executando comandos do telnet no novo servidor de e-mail, verifiquei que as mensagens não estavam chegando na caixa de e-mail de uma conta do gmail.

Analisando o maillog, percebi a ocorrência do seguinte bloqueio:

11] Our system has detected that this message is 550-5.7.1 not RFC 5322 compliant: 550-5.7.1 ‘From’ header is missing. 550-5.7.1 To reduce the amount of spam sent to Gmail, this message has been 550-5.7.1 blocked. Please visit 550-5.7.1  https://support.google.com/mail/?p=RfcMessageNonCompliant 550 5.7.1 and review RFC 5322 specifications for more information. u1si19884180vkg.18

Traduzindo… O campo “From” do cabeçalho da mensagem estava sendo perdido ou não estava sendo transmitido, e por conta disso o Google bloqueou a mensagem,para evitar propagação de spam. O blábláblá de endereço do suporte do google fazendo referencia a RFC não ajudou muito….

PARA SOLUCIONAR:

Como o servidor de e-mail original(versão mais antiga) estava funcionando sem problemas e eu estava utilizando as mesmas configurações no servidor novo(versão mais nova), entendi que o problema poderia ser uma diferença de versão ou mesmo um bug.

Recorri então a documentação oficial do Postfix e encontrei um parâmetro com uma descrição muito pertinente ao caso:

always_add_missing_headers
http://www.postfix.org/postconf.5.html#smtp_header_checks

O parâmetro always_add_missing_headers  do postconf adiciona headers (cabeçalho) quando não estão presentes.

Sendo assim inseri esse parâmetro no main.cf da seguinte forma:

always_add_missing_headers=yes

Salvei a ateração, restartei o serviço do POSTIFX e por fim enviei uma mensagem de teste utilizando a mesma forma anterior……e BELE FUNCIONOU….!!! A mensagem chegou na caixa de e-mail do endereço de destino.

mas veio a pergunta……

PORQUE NO SERVIDOR COM VERSÃO MAIS ANTIGA FUNCIONOU?

A chave para desvendar o mistério está na descrição do parâmetro.
Versões 2.5 e inferior do POSTFIX adicionavam o cabeçalho sempre que os headers (cabeçalhos) não estivessem presentes.

A partir da versão 2.6 e superior, o POSTFIX só adiciona os headers  se os clientes(endereço from) bater com o parâmetro local_header_rewrite_clients , como no meu  teste o endereço do cliente já estava com o nome do dominio, o parâmetro local_header_rewrite_clients estava adicionando 2(duas) vezes o nome do dominio fazendo o cabeçalho se perder.

Com o parâmetro always_add_missing_headers habilitado( =yes) o POSTFIX passa a trabalhar como versões anteriores, ou seja adicionado sempre um header causa o falte.

OBS:

Na própria descrição do parâmetro always_add_missing_headers tem -se uma ideia do porque da alteração da forma de comportamento do POSTIFX das versões 2.6 em diante. É por conta do DKIM( Domain Keys Identified Mail) ,que é um mecanismo para autenticação de e-mail baseado em criptografia de chaves. Como no meu cenário não iremos utilizar esse mecanismo e é um ambiente bem restrito, esse parametro pode ser habilitado com segurança.

Lembrando que  a versão do Servidor POSTFIX original 2.3.3 e a versão nova era 2.10.1.

logo_preciseipostei

Problema resolvido, postfix pronto para a produção, sendo assim……….


Configuração do sistema utilizado:

Sistema: Linux

Distribuição: CENTOS 7.0

Servidor de E-mail Original: POSTFIX Versão 2.3.3

Servidor de E-mail Novo: POSTFIX Versão 2.10.1

REFERÊNCIAS:

http://www.postfix.org/postconf.5.html#smtp_header_checks

http://www.gnu.org/software/emacs/manual/html_node/emacs/Mail-Headers.html

http://antispam.br/admin/dkim/

http://dkim.org/

 

Ajude a outros..Compartilhe!!

2 thoughts on “Servidor SMTP POSTFIX ‘From’ header is missing (Faltando Cabeçalho)

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *