Назад | Перейти на главную страницу

Postfix при использовании relayhost отправляет локальные электронные письма root

Недавно я настроил веб-сервер без почтового сервера внутри него. Кроме того, я использую другой сервер для получения входящих писем на мой домен (ip записи MX отличается от ip веб-сервера). Также я настроил postfix для отправки электронных писем через хост-ретранслятор smtp для исходящих писем с веб-сервера. Проблема в том, что: все исходящие электронные письма в другие домены работают нормально, но когда веб-приложение пытается отправить электронное письмо на электронную почту моего домена (например, support@mydomain.com), оно отправляется и не может быть доставлено. Вот мой /etc/postfix/main.cf

smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = no
append_dot_mydomain = no
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

smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
myhostname = mydomain.com
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination =  $myhostname, localhost.localdomain, localhost
relayhost = smtp.emailsmtpprovider.com:2525
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = static:something@somewhere.com:xxxxx-xxxxx-xxx-xxxx-xxxxxxxxxxxx
smtp_sasl_security_options = noanonymous
smtp_tls_security_level = encrypt
header_size_limit = 4096000
smtpd_sasl_auth_enable = yes
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocols = all
virtual_alias_maps = hash:/etc/postfix/virtual

Вот мой /etc/postfix/virtual содержание:

root     root@localhost

Вот мой /etc/aliases содержание:

postmaster:    root

Вот мой /etc/mailname содержание:

mydomain.com

Наконец-то вот мой /var/log/mail.log связанный контент:

Mar 27 12:30:06 web-server-01 postfix/cleanup[25232]: 240BF1F5FA5: message-id=<20180327123006.240BF1F5FA5@mydomain.com>
Mar 27 12:30:06 web-server-01 postfix/qmgr[24992]: 240BF1F5FA5: from=<root@mydomin.com>, size=804, nrcpt=1 (queue active)
Mar 27 12:30:06 web-server-01 postfix/local[25234]: 240BF1F5FA5: to=<root@localhost>, orig_to=<root>, relay=local, delay=0.04, delays=0.02/0.01/0/0, dsn=2.0.0, status=sent (delivered to mailbox)
Mar 27 12:30:06 web-server-01 postfix/qmgr[24992]: 240BF1F5FA5: removed

Я много гуглил, но так и не продолжил. Буду признателен, если кто-нибудь сможет мне помочь.

Похоже, проблема в том, что у вас myhostname = mydomain.com а потом mydestination = $myhostname, localhost.localdomain, localhost

Это заставляет postfix обрабатывать всю почту для mydomain.com как локальную. Если вы установите следующее, проблема должна быть исправлена.

myhostname = hostname.mydomain.com
mydomain = mydomain.com

Если вы ищете что-то, что будет просто ретранслировать электронную почту с локального хоста на ретранслятор, вы можете подумать о ssmtp