Postfix

後綴:milter-reject:END-OF-MESSAGE from …:4.7.1 服務不可用(opendkim)

  • September 24, 2021

我將 OpenDkim 配置為使用 postfix,當我嘗試發送郵件時出現以下錯誤:

postfix/cleanup[11542]: 40F271A291A: milter-reject: END-OF-MESSAGE from ***[***]: 4.7.1 Service unavailable - try again later; from=<me@example.com> to=<me2@hotmail.es> proto=ESMTP helo=<[192.168.1.10]>

我已將 opendkim 配置為使用 unix 套接字,並且它正在工作:

[chazy@mail ~]$ sudo netstat -nalp | grep dkim
unix  2      [ ACC ]     STREAM     LISTENING     144135   11267/opendkim       /run/opendkim/opendkim.sock
unix  3      [ ]         STREAM     CONNECTED     147626   11267/opendkim       /run/opendkim/opendkim.sock
unix  2      [ ]         DGRAM                    144137   11267/opendkim

Opendkim 由它自己的使用者啟動,正如 Arch wiki 所建議的(以及其他安全建議)。這些文件夾也歸 opendkim:mail 所有。

我對所有域都使用相同的選擇器和簽名密鑰,這有問題嗎?

後綴配置如下:

# DKIM
milter_default_action = accept
smtpd_milters = unix:/run/opendkim/opendkim.sock
non_smtpd_milters = unix:/run/opendkim/opendkim.sock

目前沒有安裝反垃圾郵件服務,只是一個基本的 postfix/dovecot/opendkim 配置來測試伺服器。

Opendkim 配置:

# /etc/opendkim/opendkim.conf

BaseDirectory           /var/lib/opendkim
Canonicalization        relaxed/simple
Domain                  domain1.com domain2.com
ExternalIgnoreList      refile:/etc/opendkim/TrustedHosts
InternalHosts           refile:/etc/opendkim/TrustedHosts
KeyFile                 /etc/opendkim/201704.private
KeyTable                refile:/etc/opendkim/KeyTable
Selector                201704
SigningTable            refile:/etc/opendkim/SigningTable
Socket                  local:/run/opendkim/opendkim.sock
Syslog                  Yes
TemporaryDirectory      /run/opendkim
UMask                   002
UserID                  opendkim:mail

TrustedHosts 配置:

# /etc/opendkim/TrustedHosts

# Trusted Hosts List
127.0.0.1
::1
x.x.x.x # Server IP
mail.maindomain.com

# Domains
maindomain.com
domain2.com

就我而言,問題在於簽名密鑰文件具有root所有者,因此這樣做:

sudo chown opendkim:mail /etc/opendkim/selector.private

修復了問題。

如果這不是你的問題,別忘了看看期刊,兩者都有!postfix 和 opendkim (我忘了查找 opendkim 並且有錯誤):

journalctl --follow --unit postfix.service --unit opendkim.service

嘗試從您用作簽名表的文件中刪除“*@”是否有效。這就是造成我的原因,即使我有

SigningTable      refile:<directory to signing table file>

在我的 opendkim.conf 中。

引用自:https://serverfault.com/questions/847138