Exchange Server で RFC に準拠していない SMTP アドレスからのメール受信を許可する方法


今回は Exchange Server の各バージョンで RFC に準拠していない SMTP アドレスからのメール受信を許可する方法についてご紹介いたします。
なお、Exchange Online に関しては RFC に準拠していない SMTP アドレスからのメール受信を許可する方法は現時点で提供されていません。

機能概要
Exchange Server では「user.@contoso.com」や「user..name@contoso.com」など RFC に準拠していない SMTP アドレスからのメール受信は既定で許可されていません。
これらの SMTP アドレスからのメール受信を許可する機能は Exchange 2007 SP3 RU2 と Exchange 2010 SP1 で追加され、Exchange 2013 と Exchange 2016 に関してはリリース時点 (RTM) で提供されております。

なお、本機能は「user.@contoso.com」の SMTP アドレスを「"user."@contoso.com」のようにローカル パートを二重引用符で括って RFC に準拠した SMTP アドレスに置換することでメールを受信出来るようにする機能であり、「user.@contoso.com」の形式のままメールを受信出来るわけではございません。
該当メールに返信する場合には「"user."@contoso.com」の形式で送信されますので、相手側のサーバーが「"user."@contoso.com」の SMTP アドレスを「user.@contoso.com」と認識しない場合には配信不能通知 (NDR) が返される可能性がございますのでご注意ください。

- 補足
Exchange Server を利用するユーザーが新規にメールを作成して宛先に RFC に準拠していない SMTP アドレスを指定して送信するシナリオの場合、本機能を有効化したとしても配信不能通知 (NDR) が返されます。
Exchange Server から RFC に準拠していない SMTP アドレスに対してメールを送信するには手動でローカル パートを二重引用符で括った SMTP アドレスを指定していただく必要がございます。

設定方法
本機能を有効化するには Exchange Server 上のアプリケーション構成ファイル (.config) にエントリを追加した上でサービスの再起動が必要となります。
ただし、Exchange Server のバージョンにより変更するアプリケーション構成ファイルと再起動するサービスが多少異なりますので、各バージョンでの設定方法を以下に記載いたします。

Exchange 2007 の場合
HUB で有効化する場合でも Edge で有効化する場合でも手順は同じとなります。

----------
1. 該当サーバー上で以下のフォルダを開きます。

C:\Program Files\Microsoft\Exchange Server\Bin

2. EdgeTransport.exe.config ファイルをメモ帳などで開きます。(問題が発生した際に元に戻せるようにファイルのバックアップ コピーも取得しておいてください)
3. <appSettings> と </appSettings> の間に以下のエントリを追加して保存します。

<add key="AcceptAndFixSmtpAddressWithInvalidLocalPart" value="true" />

2017020201

4. Microsoft Exchange Transport サービスを再起動します。
----------

Title: Exchange Server 2007 ユーザーが電子メール メッセージを受信者に送信すると、"550 5.1.3" NDR メッセージを受信する
URL: https://support.microsoft.com/ja-jp/help/2282570

Exchange 2010 の場合
HUB で有効化する場合でも Edge で有効化する場合でも手順は同じとなります。

----------
1. 該当サーバー上で以下のフォルダを開きます。

C:\Program Files\Microsoft\Exchange Server\V14\Bin

2. EdgeTransport.exe.config ファイルをメモ帳などで開きます。(問題が発生した際に元に戻せるようにファイルのバックアップ コピーも取得しておいてください)
3. <appSettings> と </appSettings> の間に以下のエントリを追加して保存します。

<add key="AcceptAndFixSmtpAddressWithInvalidLocalPart" value="true" />

2017020202

4. Microsoft Exchange Transport サービスを再起動します。
----------

Title: Exchange 2010 で @ の直前にピリオドがあるなどの RFC に準拠していない SMTP アドレスを含むメッセージを受信できない
URL: https://support.microsoft.com/ja-jp/help/2439987

Exchange 2013 の場合
Exchange 2013 では「CAS が提供する Frontend Transport サービス」で有効化する場合と「MBX もしくは Edge が提供する Transport サービス」で有効化する場合で手順が異なります。

・CAS が提供する Frontend Transport サービスで有効化する場合
----------
1. 該当サーバー上で以下のフォルダを開きます。

C:\Program Files\Microsoft\Exchange Server\V15\Bin

2. MSExchangeFrontendTransport.exe.config ファイルをメモ帳などで開きます。(問題が発生した際に元に戻せるようにファイルのバックアップ コピーも取得しておいてください)
3. <appSettings> と </appSettings> の間に以下のエントリを追加して保存します。

<add key="AcceptAndFixSmtpAddressWithInvalidLocalPart" value="true" />

2017020201

4. Microsoft Exchange Frontend Transport サービスを再起動します。
----------

・MBX もしくは Edge が提供する Transport サービスで有効化する場合
----------
1. 該当サーバー上で以下のフォルダを開きます。

C:\Program Files\Microsoft\Exchange Server\V15\Bin

2. EdgeTransport.exe.config ファイルをメモ帳などで開きます。(問題が発生した際に元に戻せるようにファイルのバックアップ コピーも取得しておいてください)
3. <appSettings> と </appSettings> の間に以下のエントリを追加して保存します。

<add key="AcceptAndFixSmtpAddressWithInvalidLocalPart" value="true" />

2017020202

4. Microsoft Exchange Transport サービスを再起動します。
----------

Exchange 2016 の場合
Exchange 2016 では CAS が廃止され、Exchange 2013 の CAS が提供していた Frontend Transport サービスは MBX で提供されています。
ただし、Frontend Transport サービスで有効化する場合と Transport サービスで有効化する場合の手順はアプリケーション構成ファイルの場所も含めて Exchange 2013 と同じになります。

設定が必要なサーバー

本機能は RFC に準拠していない SMTP アドレスからのメールを外部から最初に受信する Exchange Server 上で有効化していただく必要がございます。
例えば、以下のような経路で Exchange Server にメールが配信される場合に有効化が必要なサーバーは Edge となります。(複数のバージョンが混在する環境でも同様)

・[上位の SMTP サーバー] --> [Exchange 2010 (Edge)] --> [Exchange 2010 (HUB)] --> [Exchange 2010 (MBX)]

・[上位の SMTP サーバー] --> [Exchange 2013 (Edge)] --> [Exchange 2013 (CAS)] --> [Exchange 2013 (MBX)]

・[上位の SMTP サーバー] --> [Exchange 2016 (Edge)] --> [Exchange 2016 (MBX)]

また、以下のように外部から最初にメールを受信するサーバーが「Exchange 2013 のマルチロール」の場合や「Exchange 2016 の MBX」の場合、該当サーバー上で外部からのメールを処理する受信コネクタがどのサービスに紐付いて構成されているかに依存いたします。

・[上位の SMTP サーバー] --> [Exchange 2013 (CAS/MBX)]

・[上位の SMTP サーバー] --> [Exchange 2016 (MBX)]

受信コネクタがどのサービスに紐付いているかは Exchange 管理シェルから以下のコマンドを実行することで確認することができます。

Get-ReceiveConnector -Server <サーバー名> | fl Identity,TransportRole

* TransportRole の設定が [FrontendTransport] と表示される場合は Frontend Transport サービス、[HubTransport] と表示される場合は Transport サービスに紐付いています。
※本情報の内容(添付文書、リンク先などを含む)は、作成日時点でのものであり、予告なく変更される場合があります。


Skip to main content