epstdmarc は、Windows Server製品用のコマンドプロンプトで実行可能な送信ドメイン認証Domain-based Message Authentication, Reporting and Conformance (DMARC) へ対応したヘッダ記載(シグネチャ及び判定ヘッダ)と履歴ファイルの作成プログラムで弊社メールサーバー製品にアドインすることにより、メール受領時において送信ドメイン認証(DMARC)を機能させることが可能になります。 epstarc は、Windows Server製品用のコマンドプロンプトで実行可能なARC(Authenticated Received Chain)用ヘッダを追加し、各段階での認証評価を表示する電子メール認証機能の仕組みを付加することが可能になります。 本アドインプログラムのみで、メール受信時には、SPF、DKIM、DMARC、ARCの判定結果のヘッダへの記載が可能且つ、メール送信時は、DKIM用のシグネチャヘッダの記載を実施しますので別途SPFやDKIMアドインプログラムの組込みは不要です。 本機能の設定は、
Windows 2008 R2/2012(R2)/2016/2019 Server
"epstdmarc.zip"には以下のファイルが含まれています。
epstdmarc.zipを"C:\Program Files\EPOST\MS\epstdmarc"フォルダへ解凍します。
example.co.jp. IN TXT "v=spf1 ip4:12.34.56.78 include:example.co.jp -all" |
test._domainkey.example.co.jp. IN TXT "v=DKIM1;k=rsa;p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDth595Mu7MWD2twVKMKnyJJRc6+cFnkjBy2xNyxha95IjrUP3Vr1EP8nN4P2fL6b5qA6B7ELquKKxdjYRUmP04uSWmDMzpYWoacz5LwQS2DwfFPuAZF7fk0OKkyta+AbXuDULytHOt6wmY6zkiDrEpGREfGB4vVbtTkGoCaozmkQIDAQAB" |
arc_test._domainkey.example.co.jp. IN TXT "k=rsa;p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDth595Mu7MWD2twVKMKnyJJRc6+cFnkjBy2xNyxha95IjrUP3Vr1EP8nN4P2fL6b5qA6B7ELquKKxdjYRUmP04uSWmDMzpYWoacz5LwQS2DwfFPuAZF7fk0OKkyta+AbXuDULytHOt6wmY6zkiDrEpGREfGB4vVbtTkGoCaozmkQIDAQAB" |
_dmarc.example.co.jp. IN TXT "v=DMARC1; p=none; rua=mailto:dmarc-ra@example.co.jp; ruf=mailto:dmarc-ra@example.co.jp" |
sign.bat <セレクタ名> |
sign.bat test |
openssl genrsa -out %1.private 1024 | → | openssl genrsa -out %1.private 2048 |
2048bit長の公開鍵をDNSのTXTレコードに設定する場合 | ||
ふたつ↓に分ける | ||
test._domainkey.example.co.jp. 300 IN TXT "v=DKIM1; k=rsa; t=y; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GP...." | "....oQm5sqLjz2eU76GlJwIDAQAB..." | |
ふたつ↑に分ける |
-----BEGIN PUBLIC KEY----- MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCtK9uRps4+UCQ8+bMtK5l3fZQP : : oQm5sqLjz2eU76GlJwIDAQAB -----END PUBLIC KEY----- |
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCtK9uRps4+UCQ8+bMtK5l3fZQP....oQm5sqLjz2eU76GlJwIDAQAB |
test._domainkey.example.co.jp. 300 IN TXT "v=DKIM1; k=rsa; t=y; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCtK9uRps4+UCQ8+bMtK5l3fZQP....oQm5sqLjz2eU76GlJwIDAQAB...<省略>" |
test._domainkey.example.co.jp. 300 IN TXT "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCtK9uRps4+UCQ8+bMtK5l3fZQP....oQm5sqLjz2eU76GlJwIDAQAB...<省略>" |
epstdmarc.exe <送信元IP> <送信元エンベロープ(From address)> <EML形式のファイル名> <実行したマシン名FQDN> |
'書式 '<Sign IP or エンベロープFROM><TAB><ACTION> ' <ACTION>は,none,verify,セレクタ(DNSに定義した名称)のいずれかを記載 ' none = 何もしない ' verify = 検証 ' その他の文字列 = 記載した文字列をセレクタとして署名 @example.co.jp test ← エンベロープの送信元が example.co.jp の全てのメールアドレスに, test(セレクタ名)で署名する。 * verify ← 上記以外のメールを検証する。(検証が不要な場合は、削除またはnoneを指定) |
項目 | 意味 |
FailureReports | (BOOL値)trueDMARCテストが失敗し、メッセージの送信者がそのレポートを要求している場合、障害レポートの生成を行います。レポート形式はRFC6591に準拠しています。 |
FailureReportsOnNone | (BOOL値)false"FailureReports"の補足として、"none"ポリシーを設定しているドメインへの障害レポートの生成を行います。 |
FailureReportsSentBy | (文字列)noreply-dmarc-support@example.co.jp障害レポートを送信するときに使用されるFrom:ヘッダの内容を設定します。 |
HistoryFile | (文字列)c:\program files\epost\ms\dmarc\report\epstdmarc.datDMARC集計レポートの生成に使用できるレコードを書込むファイル名をフルパスで指定します。順次書込まれたレコードは、受信した単一のメッセージに関する情報を含む行の集合として、DMARC集計レポートの生成に必要なすべての関連情報が含まれます。 これは、集約レポートを抽出できるリレーショナルデータベース(SQLサーバ等)に定期的にインポートされることを想定したものです。不要の場合は空欄とします。指定した場合は、このパス(ディレクトリ)は事前に手動で作成しておく必要があります。 |
ReportCommand | (文字列)sendmail.exe -tjpFailureReportsが有効な場合、障害レポート送信用の外部コマンドを指定します。 デフォルトは"sendmail.exe -tjp"です。 |
RecordAllMessages | (BOOL値)false設定され、 HistoryFileにファイル名が指定されている場合、受信したすべてのメッセージをファイルに記録する場合有効にします。未設定の場合(デフォルト:false)、From:ドメインがDMARCレコードを発行したメッセージのみをファイルに記録されます。 |
項目 | 意味 |
family= | (数値)0アドレスファミリーを指定します。IPv4=0/IPv6=1 |
charset= | (文字列)iso-2022-jp送信メールの文字コードを指定します。 |
smtpserver= | (文字列)127.0.0.1接続SMTPサーバのアドレスを指定します。 |
port= | (数値)25接続SMTPサーバのポートを指定します。 |
esmtp= | (数値)0SMTP接続時にSMTP認証を行う場合'1'を指定します。 |
authid= | (文字列)SMTP認証時のIDを指定します。 |
authpass= | (文字列)SMTP認証時のパスワードを指定します。 |
ssl= | (数値)0SSL/TLSによるSMTP接続時に'1'を指定します。 |
debug= | (数値)0実行状態をトレース表示する場合'1'を指定します。 |
timeout= | (数値)300無通信タイムアウト時間(秒単位)を指定します。 |
'書式 '<設定項目><SP>又は<TAB><ACTION> |
項目 | 設定値 | 意味 |
Mode | sv | s=sign v=verify |
AuthservID | xxx.hogehoge.jp | TELNET等でSMTPサービスに接続した際に応答される "220 xxx.hogehoge.jp E-POST ESMTP Receiver..." で応答されるホスト名(FQDN) |
Domain | hogehoge.jp | ドメイン名 |
Canonicalization | relaxed/simple | 左辺ヘッダの正規化/左辺本文の正規化 |
Selector | arc_e0001 | DNSのTXTレコードにARC用に使用する識別名 (DKIMの設定方法と同じ) |
KeyFile | C:\PROGRA~1\EPOST\MS\epstdmarc\e0001.private | セレクタに対応する秘密鍵ファイル(フルパスで指定:スペースが含まれる場合はショートネームで指定) |
SignHeaders | to,subject,message-id,date,from,mime-version,dkim-signature | 署名の生成時に含めるヘッダー フィールドのセットを指定します。 指定はカンマ区切りで行い、大文字と小文字の区別はありません。 ARC 仕様で義務付けられているヘッダー・フィールドがリストに省略されている場合、それらのフィールドは暗黙的に追加されます。 デフォルトでは、DKIM仕様に「署名すべき(SHOULD)」と記載されているフィールド(RFC6376、5.4節)が署名されます。 |
SignatureAlgorithm | rsa-sha256 | 署名用アルゴリズムを指定します |
OPENSSL LIBDKIM OpenDMARC OpenARC
ご意見などは、E-mail:info@e-postinc.jp までお願いいたします。 また、最新の情報は"http://www.e-postinc.jp/"にて行う予定です。
v1.00 2020.01.22 公開 v1.01 2020.02.01 送信元エンベロープが空欄の場合引数が一致しなくなる不具合を修正。 v1.02 2020.02.10 1カラム目にdotがあるとそのdotが消えてしまう不具合を修正。 v1.03 2020.06.23 判定結果が失敗時のエラー詳細コードを返すようにした。 v1.04 2023.12.20 プレフィックス無しのIP判定が失敗する不具合を修正。 v1.05 2024.01.19 1.ARC(Authenticated Received Chain)用ヘッダを追加。 2.ヘッダ1項目が2048byteを越えると該当行からヘッダ分離されてしまう不具合。 3.ARCヘッダに2048bitでサインするとハングしてしまう不具合。 v1.06 2024.02.17 1.ARC実行の結果(成功有無)をログに記録するようにした。 2.本文中に1カラム目のdotがあると、誤ったサインの結果を出力した不具合。 3.Subject:ヘッダが未指定のDKIMサインの判定が失敗していた不具合。
-許可なく内容の転載を禁じます。-