Na infraestrutura da minha empresa, tenho um servidor de correio interno com postfix cujo nome é, digamos, srv-internal.central.mydomain.tld com o IP interno 10.10.128.200.
Para trocar e-mails com a Net, ele usa um relay mail server (um servidor em um ambiente DMZ com todos os furos necessários, por exemplo), mesmo com postfix, cujo nome é mailgw.central.mydomain.tld com interface interna IP 10.10.133.105
O nome de domínio público da nossa infraestrutura é (digamos) " central.mydomain.tld ", mas " pec.central.mydomain.tld " NÃO nosso subdomínio . É fornecido por outro ISP fora da nossa rede (portanto, os e-mails para esse domínio precisam sair).
Se eu enviar um email de [email protected] (da máquina srv-internal.central.mydomain.tld) para [email protected] .tld , recebo do servidor de retransmissão o seguinte erro:
Sep 4 08:03:16 mailgw postfix/smtpd[26678]: NOQUEUE: reject: RCPT from unknown[10.10.128.200]: 550 5.1.1 <[email protected]>: Recipient address rejected: User unknown in relay recipient table; from=<[email protected]> to=<[email protected]> proto=ESMTP helo=<srv-internal.central.mydomain.tld>
Sep 4 08:03:16 mailgw postfix/smtpd[26678]: disconnect from unknown[10.10.128.200]
Meu servidor de retransmissão está no Linux CentOS versão 5.7, o lançamento do postfix é o postfix-2.3.3-2.1.el5_2 dos repositórios padrão do CentOS.
Digamos que meu domínio seja:
mydomain = central.mydomain.tld
E a configuração do meu postfix no servidor de retransmissão, atualmente, é a seguinte:
(postconf -d; postconf -d; postconf -n;) | classificar | uniq -u
alias_maps = hash:/etc/aliases
biff = no
body_checks = regexp:/etc/postfix/body_checks
content_filter = filter:127.0.0.1:10025
default_process_limit = 10
disable_vrfy_command = yes
header_checks = pcre:/etc/postfix/header_checks
mailq_path = /usr/bin/mailq.postfix
manpage_directory = /usr/share/man
message_size_limit = 12582912
mime_header_checks = regexp:/etc/postfix/mime_header_checks
mydestination = $myhostname, localhost.$mydomain
myhostname = mailgw.$mydomain
mynetworks = 127.0.0.0/8, 10.10.24.0/24, 10.10.128.200/32, 10.10.128.201/32
newaliases_path = /usr/bin/newaliases.postfix
readme_directory = /etc/postfix/README_FILES
receive_override_options = no_address_mappings
relay_domains = $mydomain, riminiventure.it
relay_recipient_maps = hash:/etc/postfix/relay_recipients
sample_directory = /etc/postfix/samples
sendmail_path = /usr/sbin/sendmail.postfix
smtpd_error_sleep_time = 5s
smtpd_hard_error_limit = 10
smtpd_helo_required = yes
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, check_client_access hash:/etc/postfix/access_client, check_helo_access hash:/etc/postfix/access_helo, check_sender_access hash:/etc/postfix/access_sender, pcre:/etc/postfix/access_sender_pcre, check_recipient_access hash:/etc/postfix/access_recipient, reject_unauth_destination, reject_invalid_hostname, reject_unauth_pipelining, reject_non_fqdn_sender, reject_unknown_sender_domain, reject_non_fqdn_recipient, reject_unknown_recipient_domain, reject_rbl_client bl.spamcop.net, reject_rbl_client sbl.spamhaus.org, check_policy_service inet:127.0.0.1:2501, permit
smtpd_soft_error_limit = 3
strict_rfc821_envelopes = yes
transport_maps = hash:/etc/postfix/transport
unknown_local_recipient_reject_code = 450
virtual_alias_domains = riminifar.it
virtual_alias_maps = hash:/etc/postfix/virtual
E este é o meu / etc / postfix / transport:
central.mydomain.tld smtp:[srv-internal.central.mydomain.tld]
someotherdomain.org smtp:[srv-internal.central.mydomain.tld]
yadomain.it smtp:[srv-internal.central.mydomain.tld]
xad.central.mydomain.tld smtp:[srv-internal.central.mydomain.tld]
test.central.mydomain.tld smtp:[10.10.15.101]
Agora, Endereço do destinatário rejeitado: Usuário desconhecido na tabela de destinatários do relay parece que o servidor de retransmissão (mailgw) "pensa" que "pec.central.mydomain.tld" é um de seus subdomínios, então ele procura pelo usuário destinatário em seu relay_recipient_maps, enquanto não deve IMHO.
Eu esperava esse comportamento se eu colocasse ".central.mydomain.tld" (com ponto inicial!) na minha tabela de transporte, mas eu realmente tenho "central.mydomain.tld", portanto, lendo manuais, só deve considerar o nome de domínio, e não também subdomínios.
Eu aprecio muito se alguém pudesse me sugerir o que estou fazendo de errado.