什么是阻止postfix传递邮件到本地传输代理?

我有以下设置(从我的postconf -n输出抓取)

alias_database = hash:/etc/aliases alias_maps = hash:/etc/aliases append_dot_mydomain = no biff = no broken_sasl_auth_clients = yes config_directory = /etc/postfix content_filter = smtp-amavis:[127.0.0.1]:10024 inet_interfaces = all mailbox_command = procmail -a "$EXTENSION" mailbox_size_limit = 0 maximal_backoff_time = 8000s maximal_queue_lifetime = 7d minimal_backoff_time = 1000s mydestination = $mydomain, localhost.$mydomain, localhost myhostname = //redacted mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 myorigin = /etc/mailname readme_directory = no recipient_delimiter = + relayhost = smtp_helo_timeout = 60s smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu) smtpd_hard_error_limit = 12 smtpd_recipient_limit = 10 smtpd_sasl_auth_enable = yes smtpd_sasl_authenticated_header = yes smtpd_sasl_local_domain = smtpd_sasl_path = private/auth smtpd_sasl_security_options = noanonymous smtpd_sasl_type = dovecot smtpd_soft_error_limit = 3 smtpd_tls_cert_file = /etc/ssl/certs/ssl-cert-snakeoil.pem smtpd_tls_key_file = /etc/ssl/private/ssl-cert-snakeoil.key smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache smtpd_use_tls = yes unknown_local_recipient_reject_code = 450 virtual_alias_maps = mysql:/etc/postfix/mysql_virtual_alias_maps.cf, mysql:/etc/postfix/mysql_virtual_alias_domainaliases_maps.cf virtual_gid_maps = static:8 virtual_mailbox_base = /var/vmail virtual_mailbox_domains = mysql:/etc/postfix/mysql_virtual_domains_maps.cf virtual_mailbox_maps = mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf, mysql:/etc/postfix/mysql_virtual_mailbox_domainaliases_maps.cf virtual_transport = virtual virtual_uid_maps = static:5000 postconf: warning: /etc/postfix/main.cf: unused parameter: virtual_overquota_bounce=yes postconf: warning: /etc/postfix/main.cf: unused parameter: virtual_mailbox_limit_maps=mysql:/etc/postfix/mysql_virtual_mailbox_limit_maps.cf postconf: warning: /etc/postfix/main.cf: unused parameter: virtual_maildir_limit_message=Sorry, the your maildir has overdrawn your diskspace quota, please free up some of spaces of your mailbox try again. postconf: warning: /etc/postfix/main.cf: unused parameter: virtual_create_maildirsize=yes postconf: warning: /etc/postfix/main.cf: unused parameter: virtual_mailbox_extended=yes postconf: warning: /etc/postfix/main.cf: unused parameter: virtual_mailbox_limit_override=yes postconf: warning: /etc/postfix/main.cf: unused parameter: smtpd_relay_restrictions=reject_unauth_pipelining, permit_mynetworks, permit_sasl_authenticated, reject_non_fqdn_recipient, reject_unauth_destination, check_policy_service inet:127.0.0.1:10023, permit 

我很less邮件服务器configuration,但据我所知,从这个消息: status = deferred(邮件传输不可用)这意味着它不能交付给LDA。 我在ubuntu 12.04上使用postifx 2.9.6,dovecot 2.0.19

编辑:邮件到达日志

 Jun 12 12:18:59 mailserve postfix/smtpd[1215]: warning: database /etc/aliases.db is older than source file /etc/aliases Jun 12 12:19:00 mailserve postfix/smtpd[1215]: connect from redacted Jun 12 12:19:00 mailserve postfix/smtpd[1215]: 6788268E01E9: client=redacted Jun 12 12:19:00 mailserve postfix/cleanup[1196]: 6788268E01E9: message-id=<[email protected]> Jun 12 12:19:00 mailserve postfix/qmgr[678]: 6788268E01E9: from=<redacted>, size=17120, nrcpt=1 (queue active) Jun 12 12:19:00 mailserve postfix/qmgr[678]: warning: connect to transport private/smtp-amavis: No such file or directory Jun 12 12:19:00 mailserve postfix/smtpd[1215]: disconnect from redacted Jun 12 12:19:01 mailserve postfix/error[1223]: 6788268E01E9: to=<redacted>, relay=none, delay=0.75, delays=0.38/0/0/0.36, dsn=4.3.0, status=deferred (mail transport unavailable) 

如果您使用dovecot作为您的LDA,则需要在master.cf中使用这样的一行:

 dovecot unix - nn - - pipe flags=DRhu user=vmail:vmail argv=/usr/local/libexec/dovecot/dovecot-lda -f ${sender} -d ${user}@${nexthop} -m ${extension} 

然后你将virtual_transport设置为dovecot ,而不是virtual

更多细节可以在这里find 。