postfix, dovecot 2, mailman, dovecot-lda в одном домене, конфиг больше не работает
Эта конфигурация работала, но после обновления до Dovecot 2 (Ubuntu 12.04) письма к mailman больше не доставляются:
Вместо доставки почтальону я получаю отскок для несуществующего пользователя mailinglist@my.host.tld
postconf -n
:
alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases, hash:/var/lib/mailman/data/aliases
append_dot_mydomain = no
biff = no
broken_sasl_auth_clients = yes
config_directory = /etc/postfix
dovecot_destination_recipient_limit = 1
inet_interfaces = all
inet_protocols = ipv4
mailbox_command = /usr/lib/dovecot/dovecot-lda -f "$SENDER" -a "$RECIPIENT"
mailbox_size_limit = 0
mydestination = $myhostname
myhostname = host.domain.tld
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 141.x.x.x
myorigin = /etc/mailname
owner_request_special = no
readme_directory = /usr/share/doc/postfix
recipient_delimiter = +
relayhost = smarthost.domain.tld
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_banner = $myhostname ESMTP
smtpd_recipient_restrictions = reject_unknown_recipient_domain, reject_unauth_pipelining, permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
smtpd_sasl_auth_enable = yes
smtpd_sasl_path = private/auth
smtpd_sasl_security_options = noanonymous
smtpd_sasl_tls_security_options = noanonymous
smtpd_sasl_type = dovecot
smtpd_tls_CAfile = /etc/postfix/cacert.pem
smtpd_tls_cert_file = /etc/ssl/certs/ssl-mail.pem
smtpd_tls_key_file = /etc/ssl/private/ssl-mail.key
smtpd_tls_loglevel = 3
smtpd_tls_received_header = yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtpd_tls_session_cache_timeout = 3600s
smtpd_use_tls = yes
tls_random_source = dev:/dev/urandom
unknown_local_recipient_reject_code = 550
virtual_alias_maps = mysql:/etc/postfix/mysql_virtual_alias_maps.cf, hash:/var/lib/mailman/data/virtual-mailman, hash:/etc/postfix/virtual
virtual_gid_maps = static:1002
virtual_mailbox_base = /home/vmail
virtual_mailbox_domains = mysql:/etc/postfix/mysql_virtual_domains_maps.cf
virtual_mailbox_limit = 51200000
virtual_mailbox_maps = mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf
virtual_transport = dovecot
virtual_uid_maps = static:1002
master.cf
:
# Постфиксный файл конфигурации основного процесса. Подробнее о формате # файла см. Справочную страницу master(5) (команда: "man 5 master"). # # Не забудьте выполнить "перезагрузку постфикса" после редактирования этого файла. # # ================================================================================ # тип сервиса private unpriv chroot wakeup команда maxproc + args # (да) (да) (да) (да) (никогда) (100) # =============================================================================== smtp inet n - - - - smtpd inet n - - - - smtpd -o smtpd_tls_security_level=encrypt - о smtpd_sasl_auth_enable = да -o smtpd_client_restrictions=permit_sasl_authenticated, отклонять -o milter_macro_daemon_name = БЕРУЩИХ SMTPs инет п - - - - smtpd -o smtpd_tls_wrappermode= да -o smtpd_sasl_auth_enable = да -o smtpd_client_restrictions=permit_sasl_authenticated, отклонять -o milter_macro_daemon_name = БЕРУЩИХ #628 инет п - - - - Пикап qmqpd fifo n - - 60 1 очистка пикапа unix n - - - 0 Очистка qmgr fifo n - n 300 1 qmgr #qmgr fifo n - - 300 1 oqmgr tlsmgr unix - - - 1000? 1 unix перезаписи tlsmgr - - - - - тривиальный unix перезаписи - - - - 0 unix отсрочки отказов - - - - - 0 unix трассировки отказов - - - - - 0 unix верификации отказов - - - - - 1 подтверждение сброса unix n - - 1000? 0 сброса проксикарты unix - - n - - proxymap proxywrite unix - - n - 1 proxymap smtp unix - - - - - smtp # При передаче почты в качестве резервной копии MX отключите fallback_relay, чтобы избежать пересылки unix циклов MX - - - - - smtp -o smtp_fallback_relay= # -o smtp_helo_timeout=5 -o smtp_connect_timeout=5 showq unix n - - - - showq ошибка unix - - - - - ошибка повторения unix - - - - - ошибка сбросить unix - - - - - сбросить локальный unix - nn - - локальный виртуальный unix - nn - - виртуальный lmtp unix - - - - - lmtp anvil unix - - - - 1 unache scache unix - - - - 1 scache # # ==================================================================== # Интерфейсы для не-Postfix программного обеспечения. Be sure to examine the manual # pages of the non-Postfix software to find out what options it wants. # # Many of the following services use the Postfix pipe(8) delivery # agent. See the pipe(8) man page for information about ${recipient} # and other message envelope options. # ==================================================================== # # maildrop. See the Postfix MAILDROP_README file for details. # Also specify in main.cf: maildrop_destination_recipient_limit=1 # maildrop unix - nn - - pipe flags=DRhu user=vmail argv=/usr/bin/maildrop -d ${recipient} # # See the Postfix UUCP_README file for configuration details. # uucp unix - nn - - pipe flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient) # # Other external delivery methods. # ifmail unix - nn - - pipe flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient) bsmtp unix - nn - - pipe flags=Fq. user=bsmtp argv=/usr/lib/bsmtp/bsmtp -t$nexthop -f$sender $recipient scalemail-backend unix - nn - 2 pipe flags=R user=scalemail argv=/usr/lib/scalemail/bin/scalemail-store ${nexthop} ${user} ${extension} mailman unix - nn - - pipe flags=FR user=list argv=/usr/lib/mailman/bin/postfix-to-mailman.py ${nexthop} ${user} # Dovecot LDA dovecot unix - nn - - pipe flags=DRhu user=vmail:vmail argv=/usr/lib/dovecot/deliver -d ${recipient} #smtp inet n - n - 1 postscreen #smtpd pass - - n - - smtpd #dnsblog unix - - n - 0 dnsblog #tlsproxy unix - - n - 0 tlsproxy
mm.cfg
is also pretty straightforward:
MTA='Postfix' POSTFIX_STYLE_VIRTUAL_DOMAINS = ['my.host.tld']
Dovecot is configured to authenticate only users via mysql
- but the mailman aliases are identical. The domain is a postfix virtual domain.
Any hints where to look? What to test? It used to work with the identical configuration, but now I'm using dovecot-lda from dovecot 2.0 and it does not work anymore, but It can also be a another problem, some configuration change.
2 ответа
Это не проблема dovecot или проблема Postfix. Это была проблема, связанная с доставкой сообщений почтальону. Я все еще не уверен, почему это когда-то работало, но у меня есть это сейчас работает:
Запись почтальона Док для этой проблемы
Если я выполню все эти шаги и добавлю недавно сгенерированный файл transports-mailman в Postfix, он будет работать.
- Smtp auth все еще работает?
- Вход в dovecot все еще работает? Может ли пользователь забрать почту через imap или pop3?
- Тестовое задание
/usr/lib/dovecot/dovecot-lda -f "$SENDER" -a "$RECIPIENT"
вручную с реальным адресом электронной почты в вашем домене.
Если (2) или (3) не удалось, то это проблема dovecot.