Dois arquivos Postfix main.cf idênticos, mas o envio de e-mail da CLI parece diferente

Dois arquivos Postfix main.cf idênticos, mas o envio de e-mail da CLI parece diferente

Recentemente, testei o Postfix e configurei-o como um cliente de email somente para envio em nosso ambiente virtual. Tenho brincado com as configurações em algumas máquinas virtuais até fazê-las funcionar e finalmente descobri os valores adequados que deveria inserir. Nossa configuração é bastante básica e vou mascarar ou dominar código abaixo com o que estamos usando.

# See /usr/share/postfix/main.cf.dist for a commented, more complete version


# Debian specific:  Specifying a file name will cause the first
# line of that file to be used as the name.  The Debian default
# is /etc/mailname.
#myorigin = /etc/mailname

smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = no

# appending .domain is the MUA's job.
append_dot_mydomain = no

# Uncomment the next line to generate "delayed mail" warnings
#delay_warning_time = 4h

readme_directory = no

# TLS parameters
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache

# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
# information on enabling SSL in the smtp client.

smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
myhostname = mail.example.com
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = mail.example, localhost.localdomain, localhost
relayhost = smtp-relay.gmail.com
mynetworks = 10.0.0.0/8 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_command = procmail -a "$EXTENSION"
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocols = all

O conteúdo de /etc/hostname está abaixo

mail.example.com

O conteúdo de /etc/hosts está abaixo

127.0.0.1   localhost.localdomain localhost
10.x.x.x    mail.example.com    mail

# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

O conteúdo de /etc/mailname abaixo

example.com

Mas por alguma razão, esta configuração é igual a outro servidor idêntico que corresponde a esses arquivos, mas quando enviei um email da linha de comando fazendo algo assim:

echo "testing email" | mail -s "test subject" [email protected]

Um servidor mostra que veio[e-mail protegido], e o outro mostra que veio de[e-mail protegido].Durante toda a minha vida, não consigo descobrir isso e não tenho certeza de onde e qual configuração é diferente entre esses dois servidores (desde então, também os reiniciei e reiniciei o serviço Postfix várias vezes).

Parece uma variável do sistema ou há outro arquivo de configuração sendo pesquisado. Estou muito curioso e gostaria de entender o que está acontecendo aqui, e qualquer informação seria muito útil. Obrigado!

Atualização 1: Incluindo comparação mail.log e postconf -n

alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
append_dot_mydomain = no
biff = no
config_directory = /etc/postfix
inet_interfaces = all
inet_protocols = all
mailbox_command = procmail -a "$EXTENSION"
mailbox_size_limit = 0
mydestination = mail.example.com, localhost.localdomain, localhost
myhostname = mail.example.com
mynetworks = 10.0.0.0/8 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
myorigin = /etc/mailname
readme_directory = no
recipient_delimiter = +
relayhost = smtp-relay.gmail.com
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
smtpd_tls_cert_file = /etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file = /etc/ssl/private/ssl-cert-snakeoil.key
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtpd_use_tls = yes

Comparação Mail.log

  • Correio01:uid=1000 from=<operations>
  • Correio02:uid=1000 [email protected]
  • Mail em mail01 é enviado com um nome de usuário simples (operações), então o postfix anexa a criação de myorigin[e-mail protegido].
  • Mail em mail02 parece ser enviado com o endereço de email completo como from, então o Postfix não anexa myorigin.

Ambos estão sendo executados em VMs Ubuntu 14.04.3 que foram criadas recentemente para isso e totalmente atualizadas. Onde eu procuraria descobrir onde esse nome de usuário simples está configurado? Eu verifiquei /etc/passwd mas apenas diz "operações", deve haver um arquivo ou algo que estou faltando em algum lugar - você tem alguma idéia?

Responder1

Eu descobri. Por alguma razão, parece que meu /etc/mailname não estava sendo processado, mesmo sendo idêntico ao outro servidor - e o arquivo ainda tinha o mesmo MD5sum - a configuração do Postfix não estava aceitando. Também percebi que estava usando mailutils em um sistema (aquele que não estava funcionando e tinha o Postfix instalado posteriormente) e o outro estava usando bsd-mailx. Troquei isso antes de tentar a alteração de /etc/mailname e não pareceu fazer diferença, mas vale a pena, estou anotando isso por precaução. De qualquer forma, mudei meu /etc/mailname para um valor falso como test, depois fiz um sudo postfix reload e sudo service postfix restart e depois mudei de volta para o que eu pretendia que fosse (contoso.com) seguido pelos mesmos dois comandos para atualize a configuração e o serviço e eis que estava funcionando conforme o esperado. Obrigado a todos que ajudaram.

informação relacionada