web-dev-qa-db-ja.com

OpenDKIMがメールに署名しない

そのため、OpenDKIMでメッセージに署名するのに問題がありますが、何が原因であるかについて壁にぶつかっています。

Debian Jessieで、PostfixとOpenDKIMを使用。

私の/etc/opendkim.conf

Syslog                  yes
SyslogSuccess           Yes
LogWhy yes
UMask                   002
Canonicalization        relaxed/simple
Mode                    sv
SubDomains              no
#ADSPAction             continue
AutoRestart             Yes
AutoRestartRate         10/1h
Background              yes
DNSTimeout              5
SignatureAlgorithm      rsa-sha256
UserID                  opendkim:opendkim
Socket                  inet:12301@localhost
KeyTable        refile:/etc/opendkim/KeyTable
SigningTable    refile:/etc/opendkim/SigningTable
ExternalIgnoreList      refile:/etc/opendkim/TrustedHosts
InternalHosts   refile:/etc/opendkim/TrustedHosts

私の/etc/opendkim/KeyTable

default._domainkey.example.com example.com:default:/etc/opendkim/keys/example.com/default.private

私の/etc/opendkim/SigningTable

example.com default._domainkey.example.com

SigningTableで次のバリエーションを試しましたが、SMTPが無効になりました。

*@example.com default._domainkey.example.com

/etc/default/opendkimで次の行のコメントを外してください:

SOCKET="inet:12345@localhost

私の/etc/postfix/main/cfに次の情報を入れてください:

# DKIM
milter_default_action = accept
milter_protocol = 6
smtpd_milters = inet:localhost:12345
non_smtpd_milters = inet:localhost:12345

これはopendkim-testkey -d example.com -s default -vvvが返すものです。

opendkim-testkey: using default configfile /etc/opendkim.conf
opendkim-testkey: checking key 'default._domainkey.example.com'
opendkim-testkey: key not secure
opendkim-testkey: key OK

Opendkimに関連するログにエラーはないようですが、署名を確認しようとすると、mail-tester.comがDKIM署名を報告せず、check-auth @ verifier.port25.comがDKIMチェックを返します:なし。

私が行方不明のものを正確に特定するための助けがあれば、大歓迎です。ありがとう。

9
anark10n

私が見る問題:

  • refileの使用
    ドキュメント から:

    文字列が「refile:」で始まる場合、文字列の残りの部分は、1行に1つずつの一連のパターンと、それらに関連付けられた値を含むファイルを指定すると推定されます。パターンは、最初の空白への行の開始と見なされ、その空白の後の部分は、そのパターンが一致したときに使用される値と見なされます。パターンは単純なワイルドカードパターンで、アスタリスク( "*")文字がワイルドカードと見なされることを除いて、すべてのテキストに一致します。値に複数のエントリが含まれている場合は、エントリをコロンで区切る必要があります。

    KeyTableはそのパターンに従っていないため、refileキーワードは必要ありません。多分それは痛くない、私は知りません。そこでは私の設定でそれを使用していません、そしてそれは私のために動作します。

    KeyTable        /etc/opendkim/KeyTable
    SigningTable    refile:/etc/opendkim/SigningTable
    
  • あなたのキーテーブル

    これらの行は、domainkeyレコードではなく、ドメインで始まることが想定されています。

    example.com example.com:default:/etc/opendkim/keys/example.com/default.private
    
  • SigningTable

    署名テーブルは、電子メールアドレスをドメインにマップする必要があります。次のようになります。

    *@example.com example.com
    

    ここではrefileキーワードが必要です。

ExternalIgnoreListInternalHostsについては、使用していないのでわかりません。残りの構成は私には良さそうです。

6