后缀+ opendkim无法正确签名。如何调试呢?


8

编辑:我确实走得更远,但我搜索的所有帖子都说许可权错误或重新生成了密钥,但我将其固定为644并归DKIM所有,并且我不断重新生成密钥,但无济于事。我现在的最新错误是

Apr 21 21:19:12 Sniffy opendkim[8729]: BB5BF3AA66: dkim_eom(): resource unavailable: d2i_PrivateKey_bio() failed
Apr 21 21:19:12 Sniffy postfix/cleanup[8627]: BB5BF3AA66: milter-reject: END-OF-MESSAGE from localhost[127.0.0.1]: 4.7.0 resource unavailable; from=<dean@abcs.com> to=<dean.hiller@gmail.com> proto=SMTP helo=<abcs.com>

我正在寻找一种简单的调试方法(不一定需要答案,但从opendkim获取日志的方法会很好)。

如果我停止opendkim,则会看到postfix日志连接被拒绝,这很好。但是当我打开opendkim发送邮件时,什么也看不到日志。我什至在我的opendkim.conf文件中也添加了“ LogWhy Yes”行,但在那里仍然看不到任何日志。

由于我看到opendkim在用户opendkim下运行,因此我将/ etc / opendkim / *和/ etc / opendkim和/etc/opendkim.conf的所有者全部更改为opendkim用户。

我正在Ubuntu上运行。我的opendkim.conf文件是

# Log to syslog
Syslog                  yes
# Required to use local socket with MTAs that access the socket as a non-
# privileged user (e.g. Postfix)
UMask                   002

# Sign for example.com with key in /etc/mail/dkim.key using
# selector '2007' (e.g. 2007._domainkey.example.com)
#Domain                 example.com
Domain                  sniffyapp.com
#KeyFile                /etc/mail/dkim.key
KeyFile                 /etc/opendkim/keys/sniffyapp.com/default.private
#Selector               2007
Selector                default

# Commonly-used options; the commented-out versions show the defaults.
#Canonicalization       simple
Mode                    sv
#SubDomains             no
#ADSPDiscard            no

Socket inet:8891:localhost
ExternalIgnoreList refile:/etc/opendkim/TrustedHosts
InternalHosts refile:/etc/opendkim/TrustedHosts
LogWhy Yes

我当然将这些行添加到postfix的main.cf中

smtpd_milters         = inet:127.0.0.1:8891
non_smtpd_milters     = $smtpd_milters
milter_default_action = accept

running的输出是file /etc/opendkim/keys/sniffyapp.com/default.private什么?
成为

输出为root @ Sniffy:〜#文件/etc/opendkim/keys/sniffyapp.com/default.private /etc/opendkim/keys/sniffyapp.com/default.private:PEM RSA私钥
Dean Hiller

通过ls -l,/ etc / opendkim / keys / sniffyapp.com / default.private及其上的每个文件的权限是什么?(即ls -l /etc/opendkim/keys/sniffyapp.com/default.private /etc/opendkim/keys/sniffyapp.com/ / etc / opendkim / keys / / etc / opendkim / / etc /
成为

他们都是opendkim拥有的。
Dean Hiller

1
尝试发送strace时尝试opendkim进程。可能会给你这是怎么回事的一些见解..
melsayed

Answers:


5

以下用于设置规范化的行有时会有所帮助。至少最近它对我有用。

Canonicalization        relaxed/relaxed
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.