LINUX.ORG.RU
решено ФорумAdmin

Проблема с отправкой писем с адресатами в поле Всс через Postfix

 


0

1

Доброго времени суток.

Есть CRMка из которой производится рассылка, есть SMTP сервер на базе Postfix. Проблема в том, что если почтовому серверу не удается доставить письмо хоть одному из получателей, перечисленных в поле Всс, то его отправка вообще не происходит.

Лог CRMки

2017-12-12 15:52:24,679 ERROR Failed to send email (from user1 <user@example.com>, to user2 <user2@example.com>, subject "Обновление")  using example.com:465, 450 4.1.2 <error@gmail.ru>: Recipient address rejected: Domain not found

2017-12-12 15:52:24,684 INFO  Re-queing EMAIL(id 221294, delivery at Tue Dec 12 15:57:24 EET 2017, 1 retries ,from <user@example.com> to user2 <user2@example.com>(TO)
,user1@dest.com(BCC),error@gmail.ru(BCC), ... user(n-1)@dest.com(BCC),user(n)@dest.com(BCC),
subject "Обновление")

Лог Postfix

Dec 12 15:52:19 mx postfix/smtpd[18401]: connect from crm [xx.xx.xx.xx]
Dec 12 15:52:19 mx postfix/smtpd[18401]: C429F3C095F: client=crm [xx.xx.xx.xx], sasl_method=LOGIN, sasl_username=do-not-reply@example.com
Dec 12 15:52:24 mx postfix/smtpd[18401]: C429F3C095F: reject: RCPT from crm [xx.xx.xx.xx]: 450 4.1.2 <error@gmail.ru>: Recipient address rejected: Domain not found; from=<do-not-reply@example.com> to=
<error@gmail.ru> proto=ESMTP helo=<crm>
Dec 12 15:52:24 mx postfix/smtpd[18401]: disconnect from crm [xx.xx.xx.xx]
Никакого упоминания о других получателях в логе нет. Я полагал, что почтовый сервер должен отправить отдельное сообщение для каждого получателя из поля Всс

Подскажите как обрабатывается заголовок Всс и где (на стороне сервера или клиента)? Хотелось бы разобраться в этом моменте.

Заранее спасибо.

Не должен он так делать, он должен сожрать всех получателей и уже потом пробовать отправить. Затем прислать аутлуп по каждому.

Но у тебя видимо проблемы с рестрикшенами и их очередностью. конфиг посфикса кидай и опиши точно откуда и куда шлешь письма. те авторизация такая-то, почта отправителя такая-то, список получателей такой-то. Имена доменов можешь заменить, но чтобы было понятно, что где и кто.

constin ★★★★ ()
Ответ на: комментарий от constin

Аутентификация Postfix через Dovecot по логину и паролю. Отправляю почту CRMкой с ящика do-not-reply@mydomain.com на ящик vm@mydomain.com. В поле Reply-To заголовка тоже установлен vm@mydomain.com. В поле Всс находятся все получатели, которые подставляются из CRM (могут быть любые домены.) В данном случае была неправильно внесена почта erland@gmail.ru вместо erland@gmail.com.

Конфиг постфикса

inet_protocols = ipv4
virtual_alias_domains = 
myhostname = mx.mydomain.com
myorigin = mx.mydomain.com
allow_percent_hack = no
swap_bangpath = no
mydomain = mydomain.com
mydestination = $myhostname, localhost, localhost.localdomain, localhost.$myhostname
biff = no
inet_interfaces = all
mynetworks = 127.0.0.0/8
mynetworks_style = host
smtpd_data_restrictions = reject_unauth_pipelining
smtpd_reject_unlisted_recipient = yes
smtpd_reject_unlisted_sender = yes
smtp_tls_security_level = may
smtp_tls_CAfile = $smtpd_tls_CAfile
smtp_tls_loglevel = 0
smtp_tls_note_starttls_offer = yes
smtpd_sender_restrictions = permit_mynetworks, reject_sender_login_mismatch, permit_sasl_authenticated
delay_warning_time = 0h
maximal_queue_lifetime = 4h
bounce_queue_lifetime = 4h
recipient_delimiter = +
proxy_read_maps = $canonical_maps $lmtp_generic_maps $local_recipient_maps $mydestination $mynetworks $recipient_bcc_maps $recipient_canonical_maps $relay_domains $relay_recipient_maps $relocated_maps $sender_bcc_maps $sender_canonical_maps $smtp_generic_maps $smtpd_sender_login_maps $transport_maps $virtual_alias_domains $virtual_alias_maps $virtual_mailbox_domains $virtual_mailbox_maps $smtpd_sender_restrictions
smtp_data_init_timeout = 240s
smtp_data_xfer_timeout = 600s
smtpd_helo_required = yes
smtpd_helo_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_non_fqdn_helo_hostname, reject_invalid_helo_hostname, check_helo_access pcre:/etc/postfix/helo_access.pcre
queue_run_delay = 300s
minimal_backoff_time = 300s
maximal_backoff_time = 4000s
enable_original_recipient = no
disable_vrfy_command = yes
home_mailbox = Maildir/
allow_min_user = no
alias_maps = hash:/etc/postfix/aliases
alias_database = hash:/etc/postfix/aliases
message_size_limit = 22020096
virtual_minimum_uid = 2000
virtual_uid_maps = static:2000
virtual_gid_maps = static:2000
virtual_mailbox_base = /data/vmail
transport_maps = proxy:mysql:/etc/postfix/mysql/transport_maps_user.cf, proxy:mysql:/etc/postfix/mysql/transport_maps_domain.cf, hash:/etc/postfix/vacation/transport
virtual_mailbox_domains = proxy:mysql:/etc/postfix/mysql/virtual_mailbox_domains.cf
virtual_mailbox_maps = proxy:mysql:/etc/postfix/mysql/virtual_mailbox_maps.cf
virtual_alias_maps = proxy:mysql:/etc/postfix/mysql/virtual_alias_maps.cf, proxy:mysql:/etc/postfix/mysql/domain_alias_maps.cf, proxy:mysql:/etc/postfix/mysql/catchall_maps.cf, proxy:mysql:/etc/postfix/mysql/domain_alias_catchall_maps.cf
sender_bcc_maps = proxy:mysql:/etc/postfix/mysql/sender_bcc_maps_user.cf, proxy:mysql:/etc/postfix/mysql/sender_bcc_maps_domain.cf
recipient_bcc_maps = proxy:mysql:/etc/postfix/mysql/recipient_bcc_maps_user.cf, proxy:mysql:/etc/postfix/mysql/recipient_bcc_maps_domain.cf
relay_domains = $mydestination, proxy:mysql:/etc/postfix/mysql/relay_domains.cf
smtpd_sender_login_maps = proxy:mysql:/etc/postfix/mysql/sender_login_maps.cf
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = 
broken_sasl_auth_clients = yes
smtpd_sasl_security_options = noanonymous
smtpd_tls_auth_only = yes
smtpd_recipient_restrictions = reject_unknown_sender_domain, reject_unknown_recipient_domain, check_sender_access hash:/etc/postfix/blacklist, reject_non_fqdn_sender, reject_non_fqdn_recipient, reject_unlisted_recipient, permit_mynetworks, permit_sasl_authenticated, reject_rbl_client zen.spamhaus.org, reject_rbl_client bl.spamcop.net, check_policy_service inet:127.0.0.1:7777, check_policy_service inet:127.0.0.1:10031, reject_unauth_destination
smtpd_end_of_data_restrictions = check_policy_service inet:127.0.0.1:10031
smtpd_tls_security_level = may
smtpd_tls_loglevel = 0
smtpd_tls_key_file = /etc/letsencrypt/live/privkey.pem
smtpd_tls_cert_file = /etc/letsencrypt/live/fullchain.pem
smtpd_tls_CAfile = /etc/letsencrypt/live/chain.pem
tls_random_source = dev:/dev/urandom
mailbox_command = /usr/libexec/dovecot/deliver
virtual_transport = dovecot
dovecot_destination_recipient_limit = 1
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/dovecot-auth
content_filter = smtp-amavis:[127.0.0.1]:10024
smtp-amavis_destination_recipient_limit = 1

jave123 ()
Ответ на: комментарий от jave123
smtpd_recipient_restrictions = 
reject_unknown_sender_domain, 
reject_unknown_recipient_domain,
check_sender_access hash:/etc/postfix/blacklist, 
reject_non_fqdn_sender, 
reject_non_fqdn_recipient, 
reject_unlisted_recipient, 
permit_mynetworks, 
permit_sasl_authenticated, 
reject_rbl_client zen.spamhaus.org, 
reject_rbl_client bl.spamcop.net, 
check_policy_service inet:127.0.0.1:7777,
check_policy_service inet:127.0.0.1:10031,
reject_unauth_destination

Эти правила работают по порядку. помести reject_unknown_recipient_domain ниже permit_sasl_authenticated и будет счастье.

ну и вообще аутифицированным юзерам надо больше доверять. их можно повыше поставить.

constin ★★★★ ()
Последнее исправление: constin (всего исправлений: 2)
Ответ на: комментарий от constin

ну и вообще аутифицированным юзерам надо больше доверять.

Не больше необходимого. Пользователи иногда пролюбливают пароли на сторону.

anc ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.