web-dev-qa-db-ja.com

Exim4でDKIMを動作させることができません

Ubuntu 16.04サーバーでDKIMをExim4で動作させるために考えられるすべてのことを試しましたが、サーバーから送信された電子メールはまだDKIMで署名されていません!

Exim4、分割されていない構成を使用しています。

/ etc/exim4/dkimで次のコマンドを使用して、秘密鍵と公開鍵を生成しました。

Sudo openssl genrsa -out dkim.key 1024
Sudo openssl rsa -in dkim.key -pubout > dkim.pub

/etc/exim4/exim4.conf.templateの次の行を編集しました。

.ifdef DKIM_DOMAIN
dkim_domain = ${lc:${domain:$h_from}}
.endif
.ifdef DKIM_SELECTOR
dkim_selector = mail
.endif
.ifdef DKIM_PRIVATE_KEY
dkim_private_key = /etc/exim4/dkim/dkim.key
.endif
.ifdef DKIM_Canon
dkim_Canon = relaxed
.endif

次に、次のコマンドを実行しました。

Sudo update-exim4.conf
Sudo service exim4 restart

このTXTレコードをDNSレコードに追加しました(公開鍵を使用):

TXT mail._domainkey "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCvnoSm2o5X9JoCKfYlhkRv5mj4yRscjlv5JmNj1PfBeZGp57XgriRCcA4S5/egrPI2VfKzoCwRsGp4uCD/UJ7+6DgCVNseSlD+n6n4mRANWWlfY7LvHfp8sAR80aurwNyx7/PHGg+ZukHcllvYCtZtg4jtZTrl8w1yiKXyJ3G3fQIDAQAB"

サーバーからGmailアドレスにメールを送信すると、すぐにスパムになりました。 [オリジナルを表示]をクリックすると、DKIMがメールヘッダーのどこにも記載されていません。

私が間違っていることを教えてください!ありがとう!

1
torjinx

eximは条件付きランタイム構成を許可します。

XXXX = something

.ifdef XXXX
<some directives>
.endif

変数XXXXに何らかの値が割り当てられている場合、それは「定義済み」になり、.ifdef XXXXTRUEに評価されます。 XXXXがXXXX = falseとして定義されている場合でも、何らかの形で定義されています。定義を防ぐために、行をコメントアウトする必要があります。バンドルされた構成には、多くの状況で多くの構成スニペットが含まれていますが、通常、コメントアウトされた制御変数によって無効になります。

あなたの場合、DKIM_DOMAINDKIM_SELECTORDKIM_PRIVATE_KEYおよび残りのDKIM_*変数が定義されている場所を見つけて、コメントを外す必要があります。

2
Kondybas