我已经build立了一个工作的postfix服务器,除了所有传入的邮件被拒绝。
当我尝试通过telnet发送邮件时:
MAIL FROM: <[email protected]> 250 2.1.0 Ok RCPT TO: <[email protected]> 554 5.7.1 <my.host.name[1.2.3.4]>: Client host rejected: Access denied
我的postconf -n
alias_database = hash:/ etc / postfix / aliases alias_maps = hash:/ etc / postfix / aliases append_dot_mydomain = no biff = no broken_sasl_auth_clients = no config_directory = / etc / postfix delay_warning_time = 4h inet_interfaces = all mailbox_size_limit = 0 masquerade_domains = mail.mydomain.com www.mydomain.com maximal_backoff_time = 8000s maximal_queue_lifetime = 7d minimal_backoff_time = 1000s mydestination = mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [:: 1] / 128 myorigin = techxonline.net 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 smtpd_client_restrictions = reject_rbl_client sbl.spamhaus.org,reject_rbl_client blackholes.easynet.nl,reject_rbl_client dnsbl.njabl.org smtpd_data_restrictions = reject_unauth_pipelining smtpd_hard_error_limit = 12 smtpd_helo_restrictions = permit_mynetworks,warn_if_reject reject_non_fqdn_hostname,reject_invalid_hostname,许可 smtpd_recipient_limit = 16 smtpd_recipient_restrictions = reject_unauth_pipelining,permit_mynetworks,permit_sasl_authenticated,reject_non_fqdn_recipient,reject_unknown_recipient_domain,reject_unauth_destination,check_policy_service inet:127.0.0.1:10023,许可 smtpd_sasl_auth_enable =是 smtpd_sasl_local_domain = smtpd_sasl_security_options = noanonymous smtpd_sender_restrictions = permit_sasl_authenticated,permit_mynetworks,warn_if_reject reject_non_fqdn_sender,reject_unknown_sender_domain,reject_unauth_pipelining,permit 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 =是 unknown_local_recipient_reject_code = 450 virtual_alias_maps = mysql:/etc/postfix/mysql_alias.cf virtual_gid_maps = static:5000 virtual_mailbox_base = / var / spool / mail / virtual virtual_mailbox_domains = mysql:/etc/postfix/mysql_domains.cf virtual_mailbox_maps = mysql:/etc/postfix/mysql_mailbox.cf virtual_uid_maps = static:5000
在从Gmail发送之后,在/var/log/syslog :
Oct 18 21:30:01 appman postfix/smtpd[25307]: connect from mail-gx0-f181.google.com[209.85.161.181] Oct 18 21:30:01 appman postfix/smtpd[25307]: NOQUEUE: reject: RCPT from mail-gx0-f181.google.com[209.85.161.181]: 554 5.7.1 <mail-gx0-f181.google.com[209.85.161.181]>: Client host rejected: Access denied; from=<[email protected]> to=<[email protected]> proto=ESMTP helo=<mail-gx0-f181.google.com> Oct 18 21:30:01 appman postfix/smtpd[25307]: disconnect from mail-gx0-f181.google.com[209.85.161.181]
我怎样才能让我的后缀服务器接受邮件? 如果有任何其他信息我可以提供,请让我知道。
编辑:这似乎是服务器要求身份validation接收邮件在这里。 它似乎不受主机限制 – 使用服务器本身的telnet仍会导致邮件被拒绝。 使用SASL进行身份validation,然后发送电子邮件正常工作。
所以,问题似乎是服务器期望邮件的authentication在最终目的地被交付,而不应该。 想法?
我想你需要把mydestination = mydomain.com放在你的configuration中。
下一个猜测:我们知道该域名是正确的,SASL的作品…所以我现在怀疑是我们看到你的限制中的错误。 我将开始与recipient_restrictions并删除permit_sasl_authenticated后的每一个拒绝。 如果有效,请一次添加一个。 如果没有,你的下一个testing是sender_restrictions。
首先删除策略委托机制check_policy_service inet:127.0.0.1:10023 。 然后重试。 机会非常高,这是阻止你的交付。