为什么 dkim 不签署这封信?

为什么 dkim 不签署这封信?

我已经配置了 DKIM:

Dec 27 11:10:03 mailer opendkim[378]: OpenDKIM Filter v2.11.0 starting (args: -x /etc/opendkim.conf)
Dec 27 11:10:10 mailer postfix/postfix-script[551]: warning: symlink leaves directory: /etc/postfix/./makedefs.out
Dec 27 11:10:10 mailer postfix/postfix-script[719]: starting the Postfix mail system
Dec 27 11:10:10 mailer postfix/master[721]: daemon started -- version 3.4.13, configuration /etc/postfix

但信件没有签名,我连接到端口 25,没有错误,请告诉我哪个配置文件可能存在问题?我的密钥正在验证中

opendkim-testkey: using default configfile /etc/opendkim.conf
opendkim-testkey: key loaded from /etc/postfix/dkim/mail.private
opendkim-testkey: checking key 'mail._domainkey.domain.com'
opendkim-testkey: key not secure
opendkim-testkey: key OK

完全按照本指南进行配置https://www.linuxbabe.com/mail-server/setting-up-dkim-and-spf

请告诉我该怎么看,以及哪里的设置可能出错。提前谢谢大家!

grep 套接字 /etc/opendkim.conf ->

# Socket smtp://localhost
# ##  Socket socketspec
#Socket                  inet:8892@localhost
#Socket    inet:12301@localhost
Socket inet:8891@localhost
#Socket    local:/run/opendkim/opendkim.sock

sammy@mailer:~$ grep -e 8891 -e unix /etc/postfix/main.cf
smtpd_milters = inet:localhost:8891
non_smtpd_milters = inet:localhost:8891

答案1

看来您意外错过了本教程中标题为“将 Postfix 连接到 OpenDKIM”的部分,该部分在 Unix 域套接字上配置 OpenDKIM,而不是默认 TCP 配置。

postfix进程在 中被 chrooted /var/spool/postfix,因此支持 Unix 套接字需要为套接字创建具有适当权限的目录:

sudo mkdir /var/spool/postfix/opendkim
sudo chown opendkim:postfix /var/spool/postfix/opendkim

更改opendkim配置以支持域套接字:

sudo nano /etc/opendkim.conf

更改以匹配:

#Socket inet:8891@localhost
Socket local:/var/spool/postfix/opendkim/opendkim.sock

编辑main.cf以支持配置:

sudo nano /etc/postfix/main.cf

改变:

smtpd_milters = local:opendkim/opendkim.sock
non_smtpd_milters = $smtpd_milters

重新启动两个进程:

sudo systemctl restart opendkim postfix

相关内容