PostfixにDKIM認証を追加する

29 Apr 2024

PostfixにDKIM認証を追加する

GoogleがなにやらGmailを使うユーザーに対して条件を出してきた。これは、SPAMメールが多いからであるが結構自サバを管理してる輩には厳しい条件である。レンタルサーバーやクラウド運用者にとっては、まあ当たり前といえば当たり前のような気もする。では、Googleはどんな条件をだしてきたかというと。

Googleのガイドラインを以下に示す。ガイドラインでは1日当たりのメール送信件数が5,000件未満かそれともそれ以上かで条件を分けている。

1)一日5000件未満

■ドメインにSPF(Sender Policy Framework)およびDKIM(DomainKeys Identified Mail)認証を実装する

■送信元ドメインおよびIPアドレスにDNSの正引きおよび逆引きレコードが存在する

■メールの送信にTLS(Transport Layer Security)接続を使用する

■迷惑メールの送信率を0.1%未満に維持する。0.3%を超えてはならない

■RFC 5322 - Internet Message Formatに準拠したメール形式を使用する

■「From:」ヘッダーのなりすましをしない

■メーリングリストおよび受信ゲートウェイによるメール転送にはARC(Authenticated Received Chain)ヘッダーを追加する。(ARCヘッダーの存在により転送メールであることが明示される)

2)1日5,000件以上の場合(上記の条件に加え下記の条件も満たす必要がある)

■メーリングリストの場合は「List-Unsubscribe」ヘッダーが必要

■ドメインにDMARC(Domain-based Message Authentication, Reporting, and Conformance)認証を実装する

■ダイレクトメールの場合は送信者の「From:」ヘッダー内のドメインがSPFおよびDKIMのドメインと一致する必要がある

■マーケティング目的のメールおよび配信登録されたメールはワンクリックでの登録解除に対応しなければならない。また、登録解除のリンクをメール本文にわかりやすく表示する必要がある

【DKIM】

DKIMとは、メール送信ドメイン認証のこと。 DKIMのプロセスには、3つのプロセスがある。

1)送信者はDKIMレコードの署名にどのフィールドを含めたいかを特定する。

これらのフィールドには、「from」アドレス、本文、件名、その他のものが含まれる。これらのフィールドは転送中も変更されないようにしなければならない。そうでない場合はDKIM認証はNGになる。

2)送信者の電子メールプラットフォームは、DKIMに含まれるテキストフィールドのハッシュを作成する。

ハッシュ値が作られると送信者だけがアクセスできる秘密鍵で暗号化される。

3)電子メールが送信された後、メールゲートウェイまたはメールプロバイダは、秘密鍵と完全に一致する公開鍵を見つけることによってDKIMを認証します。これにより、DKIMは復号化され元のハッシュ値に戻る。

さらに受信者はDKIM署名に含まれるフィールドのハッシュを独自に作成して復号化されたばかりのハッシュ値と比較する。もしこれらが一致すれば2つのことがわかる。1つは、DKIMのフィールドが転送中に変更されていないということ、さらにもう1つは電子メールの署名者が本当にそのメールを所有していること。

【SPF】

SPF (Sender Policy Framework) はメール送信ドメインの認証技術のひとつで、送信者のドメインの詐称を防いで送信ドメインの正当性を検証することができる。 SPFによりドメインの所有者がそのドメインからメールを送信するために使用するメールサーバを指定することができる。メールを送信する企業は、ドメインネームシステム(DNS)でSPF レコード(TXT RR)を発行します。このレコードリストには、そのドメインを利用してメールを送信することが許可されているIP アドレスが含まれています。 メールの受信者は、DNS内の「Envelope from (Mail From, Mfrom, Return-Pathなどとも表記) 」ドメイン名を調べてSPFレコードを検証します。このドメインを利用してメールを送信しているIP アドレスがSPFレコードに記載されていない場合、そのメッセージはSPF認証に失敗します。

SPFには次のようなデメリットがある。

1)サービスプロバイダを変更したりメールストリームを追加したりした場合はSPFレコードをいちいち更新しなければならない。

2)SPFでNGになったからといって、そのメッセージが常に受信トレイからブロックされるわけではない。

3)メッセージが転送されるとSPFは解除される。

4)SPFはメッセージの表示名やメーラーに表示される「header from」アドレスを偽装する悪人からブランドを保護するものではない。

SPFで保護されたドメインは攻撃者にとって無視せざる負えなくなるため悪用されることがなくなり結果としてスパムフィルタによってブラックリスト化されにくくなる。結論としてはSPFはDKIMとセットにしないと片手落ちのシステムである。

1.パッケージのインストール

$ sudo apt install opendkim opendkim-tools -y

パッケージリストを読み込んでいます... 完了

依存関係ツリーを作成しています... 完了

状態情報を読み取っています... 完了

以下の追加パッケージがインストールされます:

libevent-2.1-7 libhashkit2 libmemcached11 libmilter1.0.1 libopendbx1 libopendbx1-sqlite3 libopendkim11 librbl1

libunbound8 libvbr2

以下のパッケージが新たにインストールされます:

libevent-2.1-7 libhashkit2 libmemcached11 libmilter1.0.1 libopendbx1 libopendbx1-sqlite3 libopendkim11 librbl1

libunbound8 libvbr2 opendkim opendkim-tools

アップグレード: 0 個、新規インストール: 12 個、削除: 0 個、保留: 0 個。

1,608 kB のアーカイブを取得する必要があります。

この操作後に追加で 3,693 kB のディスク容量が消費されます。

取得:1 http://deb.debian.org/debian bookworm/main amd64 libopendkim11 amd64 2.11.0~beta2-8+deb12u1 [85.7 kB]

取得:2 http://deb.debian.org/debian bookworm/main amd64 libhashkit2 amd64 1.1.4-1 [18.3 kB]

取得:3 http://deb.debian.org/debian bookworm/main amd64 libmemcached11 amd64 1.1.4-1 [80.4 kB]

取得:4 http://deb.debian.org/debian bookworm/main amd64 libmilter1.0.1 amd64 8.17.1.9-2 [238 kB]

取得:5 http://deb.debian.org/debian bookworm/main amd64 libopendbx1 amd64 1.4.6-16+b1 [34.6 kB]

取得:6 http://deb.debian.org/debian bookworm/main amd64 librbl1 amd64 2.11.0~beta2-8+deb12u1 [41.1 kB]

取得:7 http://deb.debian.org/debian bookworm/main amd64 libevent-2.1-7 amd64 2.1.12-stable-8 [180 kB]

取得:8 http://deb.debian.org/debian bookworm-proposed-updates/main amd64 libunbound8 amd64 1.17.1-2+deb12u2 [550 kB]

取得:9 http://deb.debian.org/debian bookworm/main amd64 libvbr2 amd64 2.11.0~beta2-8+deb12u1 [42.5 kB]

取得:10 http://deb.debian.org/debian bookworm/main amd64 opendkim amd64 2.11.0~beta2-8+deb12u1 [205 kB]

取得:11 http://deb.debian.org/debian bookworm/main amd64 libopendbx1-sqlite3 amd64 1.4.6-16+b1 [5,040 B]

取得:12 http://deb.debian.org/debian bookworm/main amd64 opendkim-tools amd64 2.11.0~beta2-8+deb12u1 [127 kB]

1,608 kB を 8秒 で取得しました (205 kB/s)

以前に未選択のパッケージ libopendkim11:amd64 を選択しています。 (データベースを読み込んでいます ... 現在 61029 個のファイルとディレクトリがインストールされています。)

.../00-libopendkim11_2.11.0~beta2-8+deb12u1_amd64.deb を展開する準備をしています ...

libopendkim11:amd64 (2.11.0~beta2-8+deb12u1) を展開しています...

以前に未選択のパッケージ libhashkit2:amd64 を選択しています。

.../01-libhashkit2_1.1.4-1_amd64.deb を展開する準備をしています ...

libhashkit2:amd64 (1.1.4-1) を展開しています...

以前に未選択のパッケージ libmemcached11:amd64 を選択しています。

.../02-libmemcached11_1.1.4-1_amd64.deb を展開する準備をしています ...

libmemcached11:amd64 (1.1.4-1) を展開しています...

以前に未選択のパッケージ libmilter1.0.1:amd64 を選択しています。

.../03-libmilter1.0.1_8.17.1.9-2_amd64.deb を展開する準備をしています ...

libmilter1.0.1:amd64 (8.17.1.9-2) を展開しています...

以前に未選択のパッケージ libopendbx1 を選択しています。

.../04-libopendbx1_1.4.6-16+b1_amd64.deb を展開する準備をしています ...

libopendbx1 (1.4.6-16+b1) を展開しています...

以前に未選択のパッケージ librbl1:amd64 を選択しています。

.../05-librbl1_2.11.0~beta2-8+deb12u1_amd64.deb を展開する準備をしています ...

librbl1:amd64 (2.11.0~beta2-8+deb12u1) を展開しています...

以前に未選択のパッケージ libevent-2.1-7:amd64 を選択しています。

.../06-libevent-2.1-7_2.1.12-stable-8_amd64.deb を展開する準備をしています ...

libevent-2.1-7:amd64 (2.1.12-stable-8) を展開しています...

以前に未選択のパッケージ libunbound8:amd64 を選択しています。

.../07-libunbound8_1.17.1-2+deb12u2_amd64.deb を展開する準備をしています ...

libunbound8:amd64 (1.17.1-2+deb12u2) を展開しています...

以前に未選択のパッケージ libvbr2:amd64 を選択しています。

.../08-libvbr2_2.11.0~beta2-8+deb12u1_amd64.deb を展開する準備をしています ...

libvbr2:amd64 (2.11.0~beta2-8+deb12u1) を展開しています...

以前に未選択のパッケージ opendkim を選択しています。

.../09-opendkim_2.11.0~beta2-8+deb12u1_amd64.deb を展開する準備をしています ...

opendkim (2.11.0~beta2-8+deb12u1) を展開しています...

以前に未選択のパッケージ libopendbx1-sqlite3 を選択しています。

.../10-libopendbx1-sqlite3_1.4.6-16+b1_amd64.deb を展開する準備をしています ...

libopendbx1-sqlite3 (1.4.6-16+b1) を展開しています...

以前に未選択のパッケージ opendkim-tools を選択しています。

.../11-opendkim-tools_2.11.0~beta2-8+deb12u1_amd64.deb を展開する準備をしています ...

opendkim-tools (2.11.0~beta2-8+deb12u1) を展開しています...

libhashkit2:amd64 (1.1.4-1) を設定しています ...

libopendkim11:amd64 (2.11.0~beta2-8+deb12u1) を設定しています ...

libopendbx1 (1.4.6-16+b1) を設定しています ...

libmilter1.0.1:amd64 (8.17.1.9-2) を設定しています ...

libevent-2.1-7:amd64 (2.1.12-stable-8) を設定しています ...

libmemcached11:amd64 (1.1.4-1) を設定しています ...

librbl1:amd64 (2.11.0~beta2-8+deb12u1) を設定しています ...

libvbr2:amd64 (2.11.0~beta2-8+deb12u1) を設定しています ...

libopendbx1-sqlite3 (1.4.6-16+b1) を設定しています ...

libunbound8:amd64 (1.17.1-2+deb12u2) を設定しています ...

opendkim-tools (2.11.0~beta2-8+deb12u1) を設定しています ...

opendkim (2.11.0~beta2-8+deb12u1) を設定しています ...

Created symlink /etc/systemd/system/multi-user.target.wants/opendkim.service → /lib/systemd/system/opendkim.service.

man-db (2.11.2-2) のトリガを処理しています ...

libc-bin (2.36-9+deb12u5) のトリガを処理しています ...

2.ペアの鍵を作成する

鍵作成ディレクトリ /etc/dkimkeys ドメイン名 kozupon.com セレクタ名 kozupon20240410

$ sudo opendkim-genkey -D /etc/dkimkeys -d kozupon.com -s kozupon20240410

ペア鍵が作成された。

$ ls -al dkimkeys/

合計 28

drwx------ 2 opendkim opendkim 4096 4月 10 14:45 .

drwxr-xr-x 96 root root 12288 4月 10 14:41 ..

-rw-r--r-- 1 root root 664 11月 26 00:28 README.PrivateKeys

-rw------- 1 root root 1704 4月 10 14:45 kozupon20240410.private

-rw------- 1 root root 523 4月 10 14:45 kozupon20240410.txt

3.鍵のパーミッションと所有者情報を設定する

$ cd /etc/dkimkeys/

$ sudo chown opendkim:opendkim kozupon20240410.private

$ sudo chown opendkim:opendkim kozupon20240410.txt

$ ls -al

合計 28

drwx------ 2 opendkim opendkim 4096 4月 10 14:45 .

drwxr-xr-x 96 root root 12288 4月 10 14:41 ..

-rw-r--r-- 1 root root 664 11月 26 00:28 README.PrivateKeys

-rw------- 1 opendkim opendkim 1704 4月 10 14:45 kozupon20240410.private

-rw------- 1 opendkim opendkim 523 4月 10 14:45 kozupon20240410.txt

4.DKIMの設定ファイルをいじる

いじるところは、以下

Domain kozupon.com

Selector kozupon20240410

KeyFile /etc/dkimkeys/kozupon20240410.private

Socket inet:8891@localhost

$ cp -p /etc/opendkim.conf /etc/opendkim.conf_$(date +%Y%m%d-%H%M%S)

$ vi /etc/opendkim.conf

Syslog yes

SyslogSuccess yes

Canonicalization relaxed/simple

Mode sv

OversignHeaders From

Domain kozupon.com

Selector kozupon20240410

KeyFile /etc/dkimkeys/kozupon20240410.private

UserID opendkim

UMask 007

Socket inet:8891@localhost

PidFile /run/opendkim/opendkim.pid

TrustAnchorFile /usr/share/dns/root.key

$ sudo systemctl restart opendkim

$ sudo netstat -lntp | grep opendkim tcp 0 0 127.0.0.1:8891 0.0.0.0:* LISTEN 644/opendkim

$ cat /etc/dkimkeys/kozupon20240410.txt

kozupon20240410._domainkey IN TXT ( "v=DKIM1; h=sha256; k=rsa; "

  "p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAq09PYkcuD/25m2HA+1Hb/MmSOcmGgZCQ62Cm9sEXJsZSijPXsos7hZBXIysw7oJfHIS77OoXYoccdQozwpFev+a/Y+t89yd+PdUcvpFOc64jScgCL7jSKgCCNFCEY6VdvO0ADB0BDh/t+VFrKBenLZOVpv6OfHed0fJI4urV4wQVWJH8dJku5wN+1QnGdQsCydO2mbcViz3+ZL"
  "ScfSJopoijXsUzkeLk40JpTEvuMbn2R0+GalxwXmdKguE1FpUVVydiT3n74jWGQ8RVigD+91b+6WRgc/5JgLpt/6N0RdKqEnNchKOS8abi9E7qfQ94aTLNCK9HOqG0VfTVldqgPQIDAQAB" )  ; ----- DKIM key kozupon20240410 for kozupon.com

pidファイルディレクトリを作る

$ sudo mkdir -p /run/opendkim

opendkimリスタート

$ sudo systemctl restart opendkim.service

$ sudo systemctl status opendkim.service

● opendkim.service - OpenDKIM Milter

 Loaded: loaded (/lib/systemd/system/opendkim.service; enabled; preset: enabled)

 Active: active (running) since Thu 2024-04-11 08:03:49 JST; 4s ago

   Docs: man:opendkim(8)

         man:opendkim.conf(5)

         man:opendkim-lua(3)

         man:opendkim-genkey(8)

         man:opendkim-genzone(8)

         man:opendkim-testkey(8)

         http://www.opendkim.org/docs.html

Process: 11045 ExecStart=/usr/sbin/opendkim (code=exited, status=0/SUCCESS)

Main PID: 11046 (opendkim)

  Tasks: 6 (limit: 4653)

 Memory: 1.9M

    CPU: 17ms

 CGroup: /system.slice/opendkim.service

         └─11046 /usr/sbin/opendkim

5.DNSの正引きゾーンに追加する

$ sudo vi out-kozupon.com.zone

$TTL 86400

; File Name "out-kozupon.com.zone" by kozupon.com

@ IN SOA sub2.kozupon.com. root.kozupon.com. (

        2024041002  ; serial

        28800       ; refresh

        14400       ; retry

        3600000     ; expire

        86400       ; default_ttl

        )

省略

kozupon.com. IN TXT "v=spf1 a:mail.kozupon.com ~all"

kozupon.com. IN TXT "v=spf1 mx ~all"

kozupon20240410._domainkey IN TXT "v=DKIM1; h=sha256; k=rsa; ""p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAq09PYkcuD/25m2HA +1Hb/MmSOcmGgZCQ62Cm9sEXJsZSijPXsos7hZBXIysw7oJfHIS77OoXYoccdQozwpFev+a/Y+t89yd+PdUcvpFOc64jScgCL7jSKgCCNFCEY6VdvO0ADB0BDh/t+VFrKBenLZOVpv6OfHed0fJI4urV4wQVWJH8dJku5wN+1QnGdQsCydO2mbcViz3+ZL""ScfSJopoijXsUzkeLk40JpTEvuMbn2R0+GalxwXmdKguE1FpUVVydiT3n74jWGQ8RVigD+91b+6WRgc/5JgLpt/6N0RdKqEnNchKOS8abi9E7qfQ94aTLNCK9HOqG0VfTVldqgPQIDAQAB"

6.DKIMの動作を確認する

root@sub2:/etc# opendkim-testkey -d kozupon.com -s kozupon20240410 -vvv

opendkim-testkey: using default configfile /etc/opendkim.conf

opendkim-testkey: key loaded from /etc/dkimkeys/kozupon20240410.private

opendkim-testkey: checking key 'kozupon20240410._domainkey.kozupon.com'

opendkim-testkey: 'kozupon20240410._domainkey.kozupon.com' unexpected reply class/type (-1/-1)

本当はOKが出て終わりになるんだけどなぜこうなるかわからない。

7.Postfixのmain.cfに設定を追加する

$ cd /etc/postfix/

$ sudo cp -p main.cf main.cf_$(date +%Y%m%d-%H%M%S)

$ sudo vi main.cf

追加

smtpd_milters = inet:127.0.0.1:8891

non_smtpd_milters = $smtpd_milters

milter_default_action = accept

$ sudo postfix check

$ sudo postfix reload

postfix/postfix-script: refreshing the Postfix mail system

8.実際メールで検証してみる

1)gmail(hogehoge@gmail.com)から自分のメアド宛にテストメールを送ってさらに返送する

以下その時のメールログ

$ tail -f /var/log/mail.log

Apr 10 16:21:40 sub2 postfix/anvil[5192]: statistics: max connection rate 1/60s for (smtp:45.88.90.205) at Apr 10 16:11:40

Apr 10 16:21:40 sub2 postfix/anvil[5192]: statistics: max connection count 1 for (smtp:45.88.90.205) at Apr 10 16:11:40

Apr 10 16:21:40 sub2 postfix/anvil[5192]: statistics: max message rate 1/60s for (smtp:13.111.16.252) at Apr 10 16:20:55

Apr 10 16:21:40 sub2 postfix/anvil[5192]: statistics: max cache size 3 at Apr 10 16:12:12

Apr 10 16:23:20 sub2 postfix/smtpd[5414]: initializing the server-side TLS engine

Apr 10 16:23:21 sub2 postfix/smtpd[5414]: connect from mail-pj1-f52.google.com[209.85.216.52]

Apr 10 16:23:22 sub2 postfix/smtpd[5414]: setting up TLS connection from mail-pj1-f52.google.com[209.85.216.52]

Apr 10 16:23:22 sub2 postfix/smtpd[5414]: mail-pj1-f52.google.com[209.85.216.52]: TLS cipher list "aNULL:-aNULL:HIGH:MEDIUM:+RC4:@STRENGTH"

Apr 10 16:23:22 sub2 postfix/smtpd[5414]: SSL_accept:before SSL initialization

Apr 10 16:23:22 sub2 postfix/smtpd[5414]: SSL_accept:before SSL initialization

Apr 10 16:23:22 sub2 postfix/smtpd[5414]: SSL_accept:SSLv3/TLS read client hello

Apr 10 16:23:22 sub2 postfix/smtpd[5414]: SSL_accept:SSLv3/TLS write server hello

Apr 10 16:23:22 sub2 postfix/smtpd[5414]: SSL_accept:SSLv3/TLS write change cipher spec

Apr 10 16:23:22 sub2 postfix/smtpd[5414]: SSL_accept:TLSv1.3 write encrypted extensions

Apr 10 16:23:22 sub2 postfix/smtpd[5414]: SSL_accept:SSLv3/TLS write certificate

Apr 10 16:23:22 sub2 postfix/smtpd[5414]: SSL_accept:TLSv1.3 write server certificate verify

Apr 10 16:23:22 sub2 postfix/smtpd[5414]: SSL_accept:SSLv3/TLS write finished

Apr 10 16:23:22 sub2 postfix/smtpd[5414]: SSL_accept:TLSv1.3 early data

Apr 10 16:23:22 sub2 postfix/smtpd[5414]: SSL_accept:TLSv1.3 early data

Apr 10 16:23:22 sub2 postfix/smtpd[5414]: SSL_accept:SSLv3/TLS read finished

Apr 10 16:23:22 sub2 postfix/smtpd[5414]: mail-pj1-f52.google.com[209.85.216.52]: Issuing session ticket, key expiration: 1712735379

Apr 10 16:23:22 sub2 postfix/smtpd[5414]: mail-pj1-f52.google.com[209.85.216.52]: save session

23BC91DE2B611EF9104E734B5A1EE5F5B5B46DC3456A0AB11E23F27A2DCFD4CB&s=smtp&l=805306576 to smtpd cache

Apr 10 16:23:22 sub2 postfix/tlsmgr[5191]: put smtpd session

id=23BC91DE2B611EF9104E734B5A1EE5F5B5B46DC3456A0AB11E23F27A2DCFD4CB&s=smtp&l=805306576 [data 125 bytes]

Apr 10 16:23:22 sub2 postfix/tlsmgr[5191]: write smtpd TLS cache entry

23BC91DE2B611EF9104E734B5A1EE5F5B5B46DC3456A0AB11E23F27A2DCFD4CB&s=smtp&l=805306576: time=1712733802 [data 125 bytes]

Apr 10 16:23:22 sub2 postfix/smtpd[5414]: SSL_accept:SSLv3/TLS write session ticket

Apr 10 16:23:22 sub2 postfix/smtpd[5414]: Anonymous TLS connection established from mail-pj1-f52.google.com[209.85.216.52]: TLSv1.3 with cipher

TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256

Apr 10 16:23:27 sub2 postfix/smtpd[5414]: 4DC2F32011D: client=mail-pj1-f52.google.com[209.85.216.52]

Apr 10 16:23:27 sub2 postfix/cleanup[5418]: 4DC2F32011D: message-id=796d990d02885f83e36b2af77504c5c5fd827691.camel@gmail.com

Apr 10 16:23:30 sub2 opendkim[5382]: 4DC2F32011D: DKIM verification successful

Apr 10 16:23:30 sub2 opendkim[5382]: 4DC2F32011D: s=20230601 d=gmail.com a=rsa-sha256 SSL

Apr 10 16:23:30 sub2 postfix/qmgr[5049]: 4DC2F32011D: from=hogehoge@gmail.com, size=3292, nrcpt=1 (queue active)

Apr 10 16:23:30 sub2 postfix/smtpd[5414]: disconnect from mail-pj1-f52.google.com[209.85.216.52] ehlo=2 starttls=1 mail=1 rcpt=1 bdat=1 quit=1 commands=7

・DKIM認証を行う旨の意思交換

Apr 10 16:23:30 sub2 opendkim[5382]: 4DC2F32011D: DKIM verification successful

Apr 10 16:23:30 sub2 opendkim[5382]: 4DC2F32011D: s=20230601 d=gmail.com a=rsa-sha256 SSL

・メールヘッダーでDKIM検証

■gmailから送信して自分のメールサーバーでメールを受信した場合のメールヘッダー

Return-Path: hogehoge@gmail.com

X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-13) on sub2.kozupon.com

X-Spam-Status: No, score=-0.2 required=5.0 tests=DKIM_SIGNED,DKIM_VALID,

    DKIM_VALID_AU,DKIM_VALID_EF,DMARC_PASS,FREEMAIL_FROM,

    RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,

    SPF_PASS autolearn=ham autolearn_force=no version=4.0.0

省略

Dkim-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;

    d=gmail.com; s=20230601; t=1712758612; x=1713363412; darn=kozupon.com;

    h=mime-version:user-agent:content-transfer-encoding:date:to:from

     :subject:message-id:from:to:cc:subject:date:message-id:reply-to;

    bh=UFZBywltqN7U7iv4ewxwYBi0iXy0b905rzB17BGe9+g=;

    b=V3bH5r0g5obpSxp9+iyIvhphE6U4zKTpSOmbbm+CMg+Bsq83zr2sFUJULFF89Ecbmu

     w6yX6LF+pGgjyz8ixMZ9I1QbqiW1HkEZh4S7Sp8pyC1ccrJZS8keT0leuhGoT2owAGqv

     LCIEtM9p3lzYR1DF5e+aMSJRZQFv0RLOW5+HACD1x5GDQG6lWwRRuankDEwJL0AVCyKd

     7dRRR3QBbETPx4LgEr/8/pdJVo7htSHSERokWC3egsFgPheCgGMomxwKNT5UbmNfaywq

     k3xZNVpAp+3mBq+pmTqt9veGkP/QHyZEtpygtCK1FgaLfGUyGDWkRpY803oILAn05wXL

     i9NQ==X-Google-Dkim-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;

    d=1e100.net; s=20230601; t=1712758612; x=1713363412;

    h=mime-version:user-agent:content-transfer-encoding:date:to:from

     :subject:message-id:x-gm-message-state:from:to:cc:subject:date

     :message-id:reply-to;

    bh=UFZBywltqN7U7iv4ewxwYBi0iXy0b905rzB17BGe9+g=;

    b=YR6tW6QMuc1zso3CPMunZHntNel2oueVBJ9L3Yss1mhoK5O0T52cDgDuvqD0QngsRS

     l+QqevVdP0MKHoWfLZIBCUN6ymV/akwlVza8oHh1C/g8e3or8nLXnsmW9YGdZK1f99nM

     aA19R+Rc885/4XIE62l8KYzPLhdPkbzDBFzg5bS/K8Bu4A4NGoshgHfhMkqKazf1n+zf

     8e9eodVqySzZJWMSQ5JZNqCOoAXyoO/JesFKRBYqrnQc+q9gFW9omNOauwACJOnRpl9d

     rVCY8sLw+yqDcN8dT3+ZOCxD9VNhNjD1VOM3hA1go/pFZdI9j6pkhLnCnhQAmmWkkqvn

     EUSg==

省略

■自分からgmailへメール送信してgmailで受信した場合のメールヘッダー

Delivered-To: hogehoge@gmail.com

受信済み: by 2002:a05:7022:1e15:b0:79:8e6a:9f4f with SMTP id uy21csp397620dlb;

    Wed, 10 Apr 2024 07:18:34 -0700 (PDT)

省略

Dkim-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kozupon.com;

    s=kozupon20240410; t=1712758711;

    bh=/wj/U4N6RWgdl1/9edsrFeIbBTkfMqYAJksiRtvwBnM=;

    h=Subject:From:To:Date:In-Reply-To:References:From;

    b=PexvXGbDscuOgDBxBJZUU4cx9iukiowklsrrXHEk36/UINlr2KswrNpOU4ilSjOnm

     4Uyat0kwAlFxcRFHADYD7KXfXtenpEGGW+rx/9OI/k8SDE5QXail0G2JD0sy49k3Q/

     FRhVhb1MyjtHo1ofboscZTU+HHfmT46Uyor9o0isxvqA6vyIXq8OEIPQh+2UiNzBct

     8LMb6cNGiqhZWM3IcKmFGgyUK2rBJiXb3K+r6f+UeipdYPYWbuM7/Lhg55VZ4ACb/e

     Iw4OJj5lewV/zD0wO4oOXIkr10qsh+VC2SJeOAEBf1c0BheizzE/iUXW30C8n7ZIFC

     iiFQnQOxVeHrQ==

省略

9.その他OpenDKIMの主なコマンド

・状態確認

$ sudo systemctl status opendkim.service

・起動

$ sudo systemctl start opendkim.service

・停止

$ sudo systemctl stop opendkim.service

・再起動

$ sudo systemctl restart opendkim.service

・自動起動設定状態の確認

$ sudo systemctl is-enabled opendkim.service

・自動起動設定

$ sudo systemctl enable opendkim.service

・自動起動解除

$ sudo systemctl disable opendkim.service