Настройки Postfix на получение почты извне

Общие вопросы по установке и настройке сервера Postfix.
Писать в этот форум могут только зарегистрированные пользователи.

Модераторы: prefer, alexandrnew, ALex_hha, Roman, Axel

Ответить
mihanus
Новичок
Новичок
Сообщения: 1
Зарегистрирован: 30 май 2014, 10:54

Настройки Postfix на получение почты извне

Сообщение mihanus » 30 май 2014, 11:42

Добрый день!
Имеется задача по настройке postfix с отправкой и получением сообщений через внешний smtp (пусть будет some.relay.ru). Прошу сильно не пинать, ибо я новичок в этих вопросах. После установки пакета iredmail и мучительной недели копания в различных скрижалях, нацарапал следующее:

main.cf

Код: Выделить всё

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

smtpd_tls_cert_file = /etc/ssl/certs/iRedMail_CA.pem
smtpd_tls_key_file = /etc/ssl/private/iRedMail.key
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 = some.localdomain.local
alias_maps = hash:/etc/postfix/aliases
alias_database = hash:/etc/postfix/aliases
myorigin = some.localdomain.local
mydestination = $myhostname, localhost, localhost.localdomain, localhost.$myhostname
relayhost = [some.relay.ru]

smtp_sasl_auth_enable = yes
smtp_sasl_security_options = noanonymous
smtp_sasl_tls_security_options = noanonymous
smtp_sender_dependent_authentication = yes
sender_dependent_relayhost_maps =
sender_canonical_maps = hash:/etc/postfix/private/canonical
smtp_generic_maps = hash:/etc/postfix/generic
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd

mynetworks = 127.0.0.0/8, xxx.xxx.xxx.xxx/xx
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocols = ipv4
virtual_alias_domains = 
allow_percent_hack = no
swap_bangpath = no
mydomain = localdomain.local
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
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, permit
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
message_size_limit = 15728640
virtual_minimum_uid = 2000
virtual_uid_maps = static:2000
virtual_gid_maps = static:2000
virtual_mailbox_base = /var/vmail
transport_maps = proxy:mysql:/etc/postfix/mysql/transport_maps_user.cf, proxy:mysql:/etc/postfix/mysql/transport_maps_domain.cf
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 = $mydomain
broken_sasl_auth_clients = yes
smtpd_sasl_security_options = noanonymous
smtpd_tls_auth_only = yes
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unknown_sender_domain, reject_unknown_recipient_domain, reject_non_fqdn_sender, reject_non_fqdn_recipient, reject_unlisted_recipient, check_policy_service inet:127.0.0.1:7777, check_policy_service inet:127.0.0.1:10031, reject_unauth_destination, check_relay_domains, permit

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_CAfile = /etc/ssl/certs/iRedMail_CA.pem
tls_random_source = dev:/dev/urandom
mailbox_command = /usr/lib/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
Содержимое /etc/postfix/private/canonical:

Код: Выделить всё

 testmail.com  user@relay.ru 
Содержимое /etc/postfix/generic:

Код: Выделить всё

@testmail.com	user@relay.ru
Содержимое /etc/postfix/sasl_passwd:

Код: Выделить всё

 some.relay.ru	user@relay.ru:userPass
Собственно, почта отправляется нормально, через указанный релей, в поле "От кого" указан адрес внешней учетной записи, как и хотелось. С внешнего ящика письма собираю fetchmail'ом. Однако, при получении сообщения происходит нечто странное и загадочное - письмо доставляется на локальный ящик через внешний ящик, а потом сразу отправляется на него же и удаляется из очереди. В итоге я получаю дубликат отправленного сообщения на внешнем ящике, а в локальном пусто! Что еще интереснее, если убрать параметр smtp_generic_maps, то почта доставляется нормально.
Понимаю, что корень зла кроется в кривых, как мои руки, настройках, посему прошу сердечно ткнуть перстом в то место, где я накосячил.

Логи прилагаю:

Код: Выделить всё

May 30 10&#58;50&#58;16 xxx postfix/qmgr&#91;6969&#93;&#58; C8C525C70D5&#58; from=<user@gmail.com>, size=2968, nrcpt=1 &#40;queue active&#41;
May 30 10&#58;50&#58;16 xxx amavis&#91;2390&#93;&#58; &#40;02390-01&#41; Passed CLEAN &#123;RelayedInternal&#125;, MYNETS/MYUSERS LOCAL &#91;127.0.0.1&#93;&#58;51053 &#91;xxx.xxx.xxx.xxx&#93; <user@gmail.com> -> <user@relay.ru>, Queue-ID&#58; 5D18A5C12D7, Message-ID&#58; <CADZbVH554dRZ17djp=QDpK3gP5dw+Z1h3mp3NsWAUBQJ87fnGA@mail.gmail.com>, mail_id&#58; EaVp-fv19Q4X, Hits&#58; 0.874, size&#58; 2375, queued_as&#58; C8C525C70D5, dkim_sd=20120113&#58;gmail.com, 6106 ms
May 30 10&#58;50&#58;16 xxx postfix/smtp&#91;7025&#93;&#58; 5D18A5C12D7&#58; to=<localuser@testmail.com>, relay=127.0.0.1&#91;127.0.0.1&#93;&#58;10024, delay=7.5, delays=0.3/0/1.9/5.3, dsn=2.0.0, status=sent &#40;250 2.0.0 from MTA&#40;smtp&#58;&#91;127.0.0.1&#93;&#58;10025&#41;&#58; 250 2.0.0 Ok&#58; queued as C8C525C70D5&#41;
May 30 10&#58;50&#58;16 xxx postfix/qmgr&#91;6969&#93;&#58; 5D18A5C12D7&#58; removed
May 30 10&#58;50&#58;21 xxx postfix/smtp&#91;7042&#93;&#58; C8C525C70D5&#58; to=<user@relay.ru>, relay=some.relay.ru&#91;xxx.xxx.xxx.xxx&#93;&#58;25, delay=4.3, delays=0.04/0/4/0.25, dsn=2.0.0, status=sent &#40;250 21887933 message accepted for delivery&#41;
May 30 10&#58;50&#58;21 xxx postfix/qmgr&#91;6969&#93;&#58; C8C525C70D5&#58; removed
Заранее спасибо

Ответить