我刚刚使用虚拟域configuration了postfix(使用dovecote),因此需要改变mailman-configuration。 我决定使用列表*来允许postfix在需要去鸽舍的邮件和由邮递员处理的邮件之间进行区分。 因此,我使用这个configuration创build了一个transport_map(lists。(domainname)mailman :)并在master.cf中注册了mailman:
mailman unix – nn – – pipe flags = FR user = mailman:mailman argv = / var / mailman / postfix-to-mailman.py $ {nexthop} $ {user}
此外,我添加列表。(域名)到中继域。 根据https://www.gurulabs.com/downloads/postfix-to-mailman-2.1.py中给出的信息(安装部分),我现在不需要configuration任何别名。 但是,如果不将genaliases的输出添加到/ etc / aliases,然后运行newaliases命令,邮件将被拒绝(在本地别名映射中找不到用户)。 有谁知道为什么会发生?
我的main.cf看起来像这样:
#查看/usr/share/postfix/main.cf.dist以获得更完整的评论
#特定于Debian:指定文件名将导致第一个
该文件的#行将用作名称。 Debian默认
#是/ etc / mailname。
#myorigin = / etc / mailname
smtpd_banner = $ myhostname ESMTP $ mail_name(Debian / GNU)
biff = no
#追加.domain是MUA的工作。
append_dot_mydomain = no
#取消注释下一行以生成“延迟邮件”警告
#delay_warning_time = 4h
readme_directory = no
#TLS参数
smtpd_tls_cert_file = /等/后缀/的sslcert / mailserver.crt
smtpd_tls_key_file = /等/后缀/的sslcert / mailserver.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
#请参阅postfix-doc软件包中的/usr/share/doc/postfix/TLS_README.gz
#关于在smtp客户端启用SSL的信息。
myhostname = mathishoffmann.de
alias_maps = hash:/ etc / aliases
alias_database = hash:/ etc / aliases
myorigin = mathishoffmann.de
mydestination = lists.mathishoffmann.de,lvps176-28-12-195.dedicated.hosteurope.de,localhost.dedicated.hosteurope.de,localhost
relayhost =
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [:: 1] / 128
mailbox_command = procmail -a“$ EXTENSION”
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
transport_maps = hash:/ etc / postfix / transport
mailman_destination_recipient_limit = 1
#多一点的垃圾邮件保护
disable_vrfy_command =是
#身份validation
smtpd_sasl_type = dovecot的
smtpd_sasl_path =私人/ auth_dovecot
smtpd_sasl_auth_enable =是
smtpd_sasl_authenticated_header =是
broken_sasl_auth_clients =是
proxy_read_maps = $ local_recipient_maps $ mydestination $ virtual_alias_maps $ virtual_alias_domains $ virtual_mailbox_maps $ virtual_mailbox_domains $ relay_recipient_maps $ relay_domains $ canonical_maps $ sender_canonical_maps $ recipient_canonical_maps $ relocated_maps $ transport_maps $ mynetworks $ smtpd_sender_login_maps
smtpd_sender_login_maps = proxy:mysql:/etc/postfix/mysql_sender_login_maps.cf
smtpd_sender_restrictions = reject_authenticated_sender_login_mismatch
reject_unknown_sender_domain
smtpd_recipient_restrictions = permit_sasl_authenticated
permit_mynetworks
reject_unauth_destination
#虚拟邮箱
virtual_alias_maps = proxy:mysql:/etc/postfix/mysql_virtual_alias_maps.cf
virtual_mailbox_base = / var / vmail /
virtual_mailbox_domains = proxy:mysql:/etc/postfix/mysql_virtual_domains_maps.cf
virtual_mailbox_limit = 112400000
virtual_mailbox_maps = proxy:mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf
virtual_minimum_uid = 104
virtual_transport =虚拟
virtual_uid_maps = static:5000
virtual_gid_maps = static:5000
virtual_transport = dovecot
dovecot_destination_recipient_limit = 1
disable_vrfy_command =是
首先,不要在列表中列出list.mathishoffmann.de – 它只属于relay_domains(请参阅ADDRESS_CLASSES自述文件)。 哦,就像yoonix说的,我没有看到你定义任何relay_domains。
此外,你需要告诉Postfix关于有效的收件人,像relay_recipient_maps = hash:/ var / lib / mailman / data / virtual-mailman。
最后,告诉mailman它可以跳过别名生成(MTA = None),并且lists.mathishoffmann.de的确是它的主域(POSTFIX_STYLE_VIRTUAL_DOMAINS = ['lists.mathishoffmann.de'])。