Milter服务需要传输:端点而不是“/var/run/opendkim/opendkim.sock”

我已经根据这个教程设置了与milter的后缀: https : //www.digitalocean.com/community/tutorials/how-to-install-and-configure-dkim-with-postfix-on-debian-wheezy

但是,然后posptfix报告说,它不能连接到该套接字milter

我改变了在postfix main.cf套接字到:

  smtpd_milters = /var/run/opendkim/opendkim.sock non_smtpd_milters = /var/run/opendkim/opendkim.sock 

和opendkim /etc/default/opendkim到:

 SOCKET="local:/var/run/opendkim/opendkim.sock" # default 

现在我收到警告,我的邮件没有签名:

 Oct 28 18:45:12 localhost postfix/cleanup[22881]: warning: Milter service needs transport:endpoint instead of "/var/run/opendkim/opendkim.sock" 

我该如何解决这个问题?

如错误中所述,参数smtpd_miltersnon_smtpd_milters的值不正确。 正确的是

 smtpd_milters = unix:/var/run/opendkim/opendkim.sock non_smtpd_milters = unix:/var/run/opendkim/opendkim.sock 

正如在官方文件中所述

侦听套接字的一般语法如下:

UNIXpath名:

连接到绑定到指定path名的本地UNIX域服务器。 如果smtpd(8)或cleanup(8)进程运行chroot,则相对于Postfix队列目录解释绝对path名。

INET:主机:端口

连接到指定本地或远程主机上的指定TCP端口。 主机和端口可以用数字或符号forms指定。