Dovecot SMTPD Saslauthentication错误:致命:没有SASLauthentication机制

我GOOGLE了这个错误,没有我读过/尝试过的作品 – 任何人都知道它是什么

错误日志:

Feb 23 22:35:36 localhost postfix/smtpd[5278]: connect from localhost.localdomain[127.0.0.1] Feb 23 22:35:36 localhost postfix/smtpd[5278]: warning: SASL: Connect to smtpd failed: No such file or directory Feb 23 22:35:36 localhost postfix/smtpd[5278]: fatal: no SASL authentication mechanisms Feb 23 22:35:37 localhost postfix/master[5214]: warning: process /usr/libexec/postfix/smtpd pid 5278 exit status 1 Feb 23 22:35:37 localhost postfix/master[5214]: warning: /usr/libexec/postfix/smtpd: bad command startup -- throttling 

后缀/ main.cf:

 queue_directory = /var/spool/postfix smtpd_sasl_type = dovecot smptd_sasl_path = private/auth broken_sasl_auth_clients = yes smtpd_sasl_auth_enable = yes smtpd_sasl_authenticated_header = yes 

达夫科特/ conf.d / 10-master.conf:

  # Postfix smtp-auth unix_listener /var/spool/postfix/private/auth { mode = 0666 user = postfix group = postfix } 

Dovecot在后缀中可用:

 [root@localhost ~]# postconf -a cyrus dovecot 

sockets:

 [root@localhost conf.d]# ls -l /var/spool/postfix/private/auth srw-rw-rw-. 1 postfix postfix 0 Feb 23 22:46 /var/spool/postfix/private/auth 

Telnet马上超时:

 [root@localhost ~]# telnet localhost 25 Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. Connection closed by foreign host. 

validation工作:

 [root@localhost ~]# doveadm auth adrian Password: passdb: adrian auth succeeded extra fields: user=adrian 

操作系统:Centos 6.4 Dovecot:2.1.17后缀:2.6.6

编辑postconf -n的结果:

 [root@localhost ~]# postconf -n alias_database = hash:/etc/aliases alias_maps = hash:/etc/aliases broken_sasl_auth_clients = yes command_directory = /usr/sbin config_directory = /etc/postfix daemon_directory = /usr/libexec/postfix data_directory = /var/lib/postfix debug_peer_level = 2 html_directory = no inet_interfaces = localhost inet_protocols = all mail_owner = postfix mailq_path = /usr/bin/mailq.postfix manpage_directory = /usr/share/man mydestination = $myhostname, localhost.$mydomain, localhost mynetworks = 192.168.124.0/24 168.100.189.0/28, 127.0.0.0/8 newaliases_path = /usr/bin/newaliases.postfix queue_directory = /var/spool/postfix readme_directory = /usr/share/doc/postfix-2.6.6/README_FILES relay_domains = hash:/etc/postfix/relay_domains sample_directory = /usr/share/doc/postfix-2.6.6/samples sendmail_path = /usr/sbin/sendmail.postfix setgid_group = postdrop smtpd_recipient_restrictions = permit_mynetworks permit_sasl_authenticated reject_unauth_destination smtpd_sasl_auth_enable = yes smtpd_sasl_authenticated_header = yes smtpd_sasl_type = dovecot transport_maps = hash:/etc/postfix/transport unknown_local_recipient_reject_code = 550 

正如你所看到的,在postconf -n输出中没有smtpd_sasl_path

为什么? 答案很简单。 因为没有设置smtpd_sasl_path 。 看看你的第一个片段:它有一个错字。 您写了smptd_sasl_path = private / auth – 但sm tp d和sm pt d之间有区别。

由于Postfix没有findsocket的信息,Postfix声称“失败的连接”。

修复它,它会工作。 🙂

最后:记住下一次:仔细阅读postconf -n ,确保Postfix和Postfix应该有相同的信息,一直是find失败的重要步骤。