【要点】Outlookで独自ドメインのDKIM署名を設定する
- Exchange Online PowerShellでのDKIM設定有効化: ドメインごとにDKIM署名を有効にするためのコマンドを実行する。
- DNSレコードの追加・確認: DKIM署名に必要なCNAMEレコードをドメインのDNS設定に追加または確認する。
- DKIM署名の状態確認: 設定が正しく反映され、DKIM署名が有効になっているかを確認する。
ADVERTISEMENT
目次
DKIM署名の概要と独自ドメイン設定の必要性
DKIM(DomainKeys Identified Mail)は、メール送信時にデジタル署名を付与する技術です。この署名は、メールのヘッダー情報に含まれ、受信側サーバーは公開鍵を用いて署名を検証します。検証が成功すれば、メールが送信元ドメインの正当なサーバーから送信され、途中で改ざんされていないことが証明されます。これにより、なりすましメールやフィッシング詐欺メールの検出精度が向上します。
Microsoft 365(Exchange Online)を利用して独自ドメインのメールアドレス(例: yourname@yourdomain.com)を使用している場合、DKIM署名を設定することは、メールの信頼性を確保する上で非常に重要です。設定されていない場合、メールが迷惑メールフォルダに振り分けられたり、受信拒否されたりするリスクが高まります。特に、ビジネスメールにおいては、相手に失礼なく、確実にメッセージを届けるためにDKIM署名の設定が推奨されます。
DKIM署名を設定することで、以下のメリットが得られます。
メールの到達率向上
受信側サーバーはDKIM署名を検証し、正当なメールであると判断します。これにより、迷惑メールフィルターにブロックされる可能性が低減し、メールが受信トレイに届きやすくなります。
差出人ドメインの信頼性向上
独自ドメインのメールアドレスが正当であることを証明できるため、受信者からの信頼を得やすくなります。ブランドイメージの維持・向上にも貢献します。
なりすまし・フィッシング対策
DKIMは、メールが改ざんされていないことを保証する役割も担います。これにより、差出人ドメインを偽装した悪意のあるメールの拡散を防ぐ助けとなります。
Exchange Online PowerShellでのDKIM設定有効化手順
Microsoft 365環境では、Exchange Online PowerShellを使用してDKIM署名を有効化します。この操作には、グローバル管理者またはExchange管理者ロールを持つアカウントが必要です。
- Exchange Online PowerShellへの接続
PowerShellを管理者として実行し、以下のコマンドでExchange Onlineに接続します。Connect-ExchangeOnline -UserPrincipalName <管理者アカウントのUPN>
管理者アカウントのUPN(User Principal Name)は、通常、メールアドレス形式です。接続時に資格情報の入力を求められます。
- DKIM署名の状態確認(オプション)
既存のDKIM設定を確認するには、次のコマンドを使用します。Get-DkimSigningConfig -DomainName <独自ドメイン名>
例えば、ドメインが`yourdomain.com`であれば、`Get-DkimSigningConfig -DomainName yourdomain.com`と入力します。
- DKIM署名の有効化
ドメインのDKIM署名を有効にするには、以下のコマンドを実行します。Set-DkimSigningConfig -DomainName <独自ドメイン名> -Enabled $true
`<独自ドメイン名>`の部分を、設定したい独自ドメイン名(例: yourdomain.com)に置き換えてください。
このコマンドを実行すると、Exchange OnlineはDKIM署名に使用する公開鍵と秘密鍵のペアを生成し、DKIM署名に必要なDNSレコード(CNAMEレコード)の情報を提供します。 - DKIM関連のDNSレコード情報の取得
DKIM署名を有効化するコマンドを実行すると、通常、CNAMEレコードの値が自動的に生成され、設定が開始されます。しかし、明示的にCNAMEレコードのホスト名と値を再確認したい場合は、以下のコマンドを使用できます。Get-DkimSigningConfig -DomainName <独自ドメイン名> | Format-List DKIMCNAMErecord, DKIMSelector
このコマンドは、CNAMEレコードのホスト名(DKIMSelectorによって決まる)と、そのレコードが指し示す値(DKIMCNAMErecord)を表示します。通常、Selectorは `selector1` または `selector2` のいずれかです。
DNSレコードの追加・確認手順
Exchange Online PowerShellでDKIM署名を有効化した後、その設定を外部に公開するために、ドメインのDNS設定に特定のレコードを追加する必要があります。これは、ドメインを管理しているDNSホスティングサービス(例: GoDaddy, Cloudflare, Microsoft 365のドメイン設定画面など)で行います。
追加すべきDNSレコードの種類
DKIM署名には、通常、CNAMEレコードを追加します。このレコードは、Exchange Onlineが生成した公開鍵情報へのポインタとして機能します。
DNSレコードの追加手順(一般的な例)
以下の手順は、DNS管理画面のインターフェースによって多少異なりますが、基本的な考え方は同じです。
- DNS管理画面へのアクセス
お使いのドメインのDNSレコードを管理しているサービス(例: Microsoft 365のドメイン設定、ドメインレジストラ、DNSホスティングサービス)にログインします。 - 新しいレコードの追加
「DNSレコードを追加」「ゾーンファイル編集」などのメニューから、新しいレコードの作成を選択します。 - レコードタイプの選択
レコードタイプとして「CNAME」を選択します。 - ホスト名(Name/Alias)の入力
Exchange Online PowerShellで取得した`DKIMSelector`の値(例: `selector1`)に、ドメイン名を結合したものを入力します。通常、`selector1._domainkey` のような形式になります。
例:`selector1._domainkey.yourdomain.com` (ドメイン名が自動補完される場合は `selector1._domainkey` のみ入力する場合があります)。 - 値(Value/Target/Points to)の入力
Exchange Online PowerShellで取得した`DKIMCNAMErecord`の値を入力します。この値は、通常、`selector1-yourdomain-com.mail.protection.outlook.com` のような形式です。 - TTL(Time To Live)の設定
TTLは、DNSレコードのキャッシュ期間です。通常はデフォルト値(例: 3600秒、1時間)で問題ありません。 - レコードの保存
入力内容を確認し、レコードを保存します。
DNSレコードの確認方法
DNSレコードの伝播には時間がかかる場合があります(数分から最大48時間)。設定が正しく反映されたかを確認するには、以下の方法があります。
DNSルックアップツールを使用する
コマンドプロンプトやPowerShellで`nslookup`コマンドを使用するか、オンラインのDNSルックアップツール(例: MXToolbox, Google Admin Toolbox)を使用して、作成したCNAMEレコードが正しく解決されるかを確認します。
例(コマンドプロンプト/PowerShell):
nslookup -type=CNAME selector1._domainkey.yourdomain.com
このコマンドで、設定したCNAMEレコードの値が返ってくれば、DNS設定は正しく行われています。
Microsoft 365管理センターでの確認
Microsoft 365管理センターの「Exchange」>「メールフロー」>「DKIM」セクションで、ドメインのDKIM署名ステータスを確認できます。ここに「有効」と表示されれば、設定が完了しています。
ADVERTISEMENT
DKIM署名の状態確認とトラブルシューティング
DNSレコードの伝播とExchange Onlineでの設定反映には時間がかかることがあります。設定直後は「無効」と表示されることもありますが、しばらく待ってから再度確認することが重要です。
DKIM署名の状態確認方法
設定の最終確認は、Microsoft 365管理センターのExchange管理センターで行うのが最も確実です。
- Exchange管理センターへのアクセス
Microsoft 365管理センターにサインインし、「Exchange」を選択してExchange管理センターを開きます。 - DKIM設定画面への移動
左側のナビゲーションペインから「コンプライアンス管理」または「メールフロー」などの項目を探し、「DKIM」または「ドメイン」>「DKIM」のセクションに移動します。 - ドメインのDKIMステータス確認
設定した独自ドメインが表示されているか確認します。ステータスが「有効」または「有効化」となっていれば、DKIM署名は正常に機能しています。
また、実際に独自ドメインからメールを送信し、受信側でDKIM署名が正しく検証されているかを確認する方法もあります。例えば、Gmailに送信し、受信したメールの「メッセージソースを表示」から「DKIM-Signature」ヘッダーを確認します。`dkim=pass`と表示されていれば成功です。
よくある問題と対処法
DKIM署名が「無効」のまま変わらない
原因: DNSレコードの伝播が完了していない、またはDNSレコードの設定値が間違っている可能性があります。
対処法:
- DNSレコードの再確認: ホスト名、レコードタイプ(CNAME)、値がExchange Online PowerShellで取得したものと完全に一致しているか、大文字・小文字も含めて注意深く確認してください。
- DNS伝播の待機: DNSレコードの伝播には最大48時間かかることがあります。しばらく待ってから再度確認してください。
- PowerShellでの再設定: PowerShellで一度無効化し、再度有効化するコマンドを実行し直すことで、新しいDNSレコード情報が生成される場合があります。
CNAMEレコードが正しく設定できない
原因: DNS管理画面のインターフェースに慣れていない、またはドメインに既に存在するレコードと競合している可能性があります。
対処法:
- DNS管理サービスのドキュメント参照: ご利用のDNS管理サービスのヘルプドキュメントを確認し、CNAMEレコードの追加方法を正確に理解してください。
- 競合レコードの確認: `selector1._domainkey` や `selector2._domainkey` といったホスト名で、既に他のレコード(TXTレコードなど)が存在しないか確認してください。必要であれば、競合するレコードを削除または修正します。
- ドメインプロバイダーへの問い合わせ: どうしても解決しない場合は、ドメインレジストラやDNSホスティングサービスに問い合わせてサポートを受けてください。
DKIM署名が「pass」にならない(テストメール送信時)
原因: 署名値が正しくない、またはメールの本文やヘッダーが送信時と受信時で変更されている可能性があります。また、Exchange OnlineでのDKIM署名が有効になっていない、またはDNSレコードが正しく設定されていない場合も考えられます。
対処法:
- Exchange OnlineでのDKIM有効化確認: PowerShellで`Get-DkimSigningConfig`を実行し、`Enabled`が`True`になっていることを確認してください。
- DNSレコードの確認: 再度、CNAMEレコードが正しく設定されているか、伝播しているかを確認します。
- メール送信テストの再実行: 署名に問題がないか、メール送信テストを再度行い、結果を確認します。
Mac版・モバイル版・Web版での違い
DKIM署名の設定自体は、Microsoft 365のバックエンド(Exchange Online)で行われるため、ユーザーが日常的に使用するOutlookのクライアント(Windows版、Mac版、Outlook on the web)によって設定方法が直接変わることはありません。DKIM署名は、メールがExchange Onlineのサーバーから送信される際に自動的に付与されるからです。
したがって、DKIM署名を設定する手順は、管理者権限を持つユーザーがExchange Online PowerShellまたはMicrosoft 365管理センターで行うことになります。Mac版Outlookやモバイル版Outlook、Outlook on the webのユーザーは、この設定が完了していれば、特別な操作なしにDKIM署名付きのメールを送信できるようになります。
ただし、DKIM署名が正しく付与されているかを確認する際に、各クライアントで「メッセージソースを表示」や「ヘッダーを表示」といった機能の場所が異なる場合があります。一般的に、Outlook on the webではメッセージの右上にある「…」メニューから、「表示」>「メッセージソースを表示」を選択することで確認できます。
ADVERTISEMENT
超解決 リモートワーク研究班
Microsoft 365の導入・保守を専門とするエンジニアグループ。通信障害やサインイン不具合など、ビジネスインフラのトラブル対応に精通しています。
Office・仕事術の人気記事ランキング
- 【Outlook】宛先が「オートコンプリート」に出ない・間違っている時の修正手順|履歴の削除と再構築
- 【Outlook】メールの受信が数分遅れる!リアルタイムで届かない時の同期設定と送受信グループ設定
- 【Word】差し込み印刷で数字の桁を整える!金額にカンマ(桁区切り)を入れる設定
- 【Excel】矢印キーで「セルが動かず画面がスクロールする」!ScrollLockの解除方法(ノートPC対応)
- 【Outlook】「メール送信を5分遅らせる」設定!誤送信を防ぐ最強のディレイ機能
- 【神技】保存せずに閉じたExcel・Wordファイルを復元する!消えたデータを復活させる4つの救出法
- 【Outlook】予定表の「祝日」が表示されない!最新カレンダーの追加と二重表示の修正手順
- 【Teams】会議の「参加者リスト」を出席後にダウンロードする!誰が参加したか確認する手順
- 【Teams】メッセージを「保存済み」にして後で読む!重要なチャットをブックマークして整理する技
- 【Excel】文字がセルの枠からはみ出す・隠れる!「折り返して表示」と「縮小して全体を表示」の使い分け
