1

私はこのトピックについて多くの研究を行いました。Apache James 2.3.2.1 メール サーバーを使用しています。本番サーバーとして構成しています。私はそれを実行して安定させましたが、jDKIM の実装は面倒でした。私はそれを正しくするためにこれらのリンクを見つけました。 http://www.nailedtothex.org/roller/kyle/entry/configuring-james-to-sign-dkim https://github.com/smoradi/config/blob/master/noften/apache-james.txt

これまで、公開鍵と秘密鍵を繰り返し検証していました。メールレット ライブラリ。Mailet の Java コードと構成。しかし、私は立ち往生しています。

www.appmaildev.com/en/domainkeys/ でテストしているときに、上記のテーマに関するいくつかのエラーを最終的に解決しました。しかし、今はただ私をいじっているだけです。DKIM テストの結果では、予想されるボディ ハッシュは予想されるボディ ハッシュでなければならないことが示されています。

  : frcCV1k9oG9oKj3dpUqdJg1PxRT2RSN/XKdLCPjaYaY=

しかし、メッセージ ヘッダーには、ボディ ハッシュはまさにそれであると書かれています。

bh : frcCV1k9oG9oKj3dpUqdJg1PxRT2RSN/XKdLCPjaYaY=

そして、それはまったく同じなので、このテストは問題ないはずです. DNS や Mailet の設定で何かが欠けているのかもしれません。さまざまな方法でアプローチしようとしてきたかどうかはわかりませんが、これは毎回得られるものです。

注意として、この点に到達する前は、Outlook または Homail でメールを送信するたびに、すぐにジャンクに到達していましたが、現在はほぼ 3 または 5 回の送信ごとにランダムになっています。SPF以降のGmailは常に受信トレイに入っています。また、サーバーには、DNS で適切に構成された PTR レコードがありません。

appmaildev からのメールです。

example.com でドメイン名を変更します

IP を xxx.xxx.xxx.xxx に変更します。

特にこのテストは、ehlo を使用して telnet で行われました

コードの不可解な部分を ** ** でマークしました。

================================================== ==============

DKIM 結果: 失敗 (不正な署名)

Signed by: webmaster@example.com
**Expected Body Hash: frcCV1k9oG9oKj3dpUqdJg1PxRT2RSN/XKdLCPjaYaY=**

PublicKey: selector._domainkey.example.com
    IN TXT = "k=rsa; p=
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCtLBczKGEysTT6QuRgApyn6yvM
XOU9Sjkx6YMomuFujqPk2XgMuBbgafckRX+1F18h9G1rURmvc3EmPxegFxim6wrE
1RJGfddO+OHEjTBOsuXa7BK29P/bhCOehVeYG4o0L5DH8z3izfmvNuC3dC4N5G3R
8ZrNd7k/196TCZIaMwIDAQAB;"

---Original Message Header---
x-sender: webmaster@example.com
x-receiver: AAAA4AcCCxQA@appmaildev.com
Received: from james ([xxx.xxx.xxx.xxx]) by mail.appmaildev.com with Microsoft SMTPSVC(7.5.7600.16385);
     Thu, 11 Feb 2016 22:05:19 -0500
DKIM-Signature: v=1; d=example.com; b=V9gPNU9Gjky7fFov5cYuTGN/gQEoBgaAkctwnME17pT/Uket4PDsVixMQbyiKvgQF3ADK8HTrKyd1L+9bBiesJAQaD1L1lH0ualjO/Ctf8jjzLyDUfB6cu4TEuAD+aVkIUVVbd0LNhcpxiOMsd5cADRBqZy60Mw9fQOaqyjh0QU=; s=selector; a=rsa-sha256; **bh=frcCV1k9oG9oKj3dpUqdJg1PxRT2RSN/XKdLCPjaYaY=;** h=from:to:received:received;
Message-ID: <1848510914.01455246317306.JavaMail.root@james>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-UserIsAuth: true
Received: from localhost.localdomain ([127.0.0.1])
by james (JAMES SMTP Server 2.3.2.1) with SMTP ID 101
for <AAAA4AcCCxQA@appmaildev.com>;
Fri, 12 Feb 2016 03:05:17 +0000 (UTC)
Date: Fri, 12 Feb 2016 03:05:17 +0000 (UTC)
From: webmaster@example.com
subject: prueba ehlo
ehlo.:
Bcc:
Return-Path: webmaster@example.com
X-OriginalArrivalTime: 12 Feb 2016 03:05:20.0069 (UTC) FILETIME=[34ED9F50:01D16542] 
4

1 に答える 1

1

さらに調査とテストを行った後、機能するようになりました。DKIM-Signature に欠損値があったようです。これは、DKIMSign メールレットの Apache James の config.xml にある私のオリジナルのタグです。

  <signatureTemplate>v=1; s=selector; d=example.com;
 h=from:to:received:received; a=rsa-sha256; bh=;
 b=;</signatureTemplate>

「c」が抜けていて、 「h」を変更しました

c=relaxed/relaxed;

h=Message-ID:Date:Subject:From:To:MIME-Version:Content-Type;

変更後、私はこれを得ました:

  <signatureTemplate>v=1; s=selector; d=example.com; 
  h=Message-ID:Date:Subject:From:To:MIME-Version:Content-Type; 
  a=rsa-sha256; bh=; b=;c=relaxed/relaxed;</signatureTemplate>

私がいくつかのテストを行ったもう 1 つの詳細は、DNS レコードです。私は Windows Server を超えていたので、念のため、これらの詳細を確認しました。

まず、「k」のセミコロンの前のエスケープ文字

k=rsa\; 

次に、「p」値が最後の値であり、セミコロンまたはエスケープ文字がないこと。

p=MIG...QAB

そのため、ホストコマンドの後に次のようなものが得られました

selector._domainkey.example.com descriptive text "k=rsa\;p=\010...QAB"

それらの変更とチェックの後。それはすべてのテストに合格します:)

構成に役立つ別のリンクはこれでした。 http://mail-archives.apache.org/mod_mbox/james-server-user/201410.mbox/%3C544FD474.2040906%40malcolms.com%3E

于 2016-02-17T03:50:06.753 に答える