この記事は更新から24ヶ月以上経過しているため、最新の情報を別途確認することを推奨いたします。
Azure上のAppServiceなどからメール送信を行う場合、SendGridなどを利用することが一般的かと思いますが、ExchangeOnlineでも可能かどうか確認した内容について纏めました。
なお、今回確認するきっかけは、WebApps上で構築しているサイトのメールフォームでのメール送信をSendGridが利用できない為、Office365の予備ライセンスが利用できないかと考えたからとなります。
結論として、公開情報にも記載がありますが可能です。
Azure 上にメールサーバー/SMTP サーバーを構築する場合の注意事項
https://docs.microsoft.com/ja-jp/archive/blogs/jpaztech/smtp-on-azurevm
-2017/4/21 追記:Office 365のExchange Onlineへのリレーも可能です
■制限事項の有無について
・Azure側の制限事項
公開情報からは、一部ライセンス(Azure Enterprise Agreement)でデプロイされている仮想マシンを除き、TCP 25番ポートでブロックされるとの記載がありますがそのほか特に制限事項はないようです。
・ExchangeOnline側の制限事項
先の注意点に記載がある通り、Exchange Online側でAzureで利用することについて制限事項はありません。
上記から、Azureのサービスから587番ポートを利用する「SMTP AUTH」での送信が可能であると考えExchangeOnline側での構成要件の確認をいたしました。
・構成要件
■Exchange Onlineに実在するライセンスが付与されたメールボックスのユーザーアカウントが必要
■接続先 SMTP サーバー名として「smtp.office365.com」を指定する
■TCP ポート 587 を利用可能(Exchange Online側の要件としては25番ポートでも可能)
■暗号化方式は STARTTLS (TLS 1.2) に対応
■テナントの基本認証の SMTP 認証の設定が有効(基本認証のSMTP認証)
1.Microsoft365管理センターに全体管理者アカウントでサインインします。
2.画面左側メニューより 「設定」→「組織設定」 を選択します。
3.「サービス」タブ内の「先進認証」をクリックします。
4.「認証済み SMTP」にチェックが入っていない場合は、基本認証のSMTP AUTHが有効と
なっていないため、チェックを入れて「保存」をクリックします。
■ユーザーのSMTP認証の設定が有効
1.Microsoft 365 管理センターに全体管理者アカウントでサインインします。
2.画面左側メニューより「ユーザー」→「アクティブなユーザー」を選択し、認証を行うユーザー
アカウントをクリックします。
3.「メール」タブ内の「メールアプリを管理する」をクリックします。
4.「認証済み SMTP」にチェックが入っていない場合は、ユーザーの SMTP AUTH の設定が有効
となっていないため、チェックを入れて「保存」をクリックします。
■多要素認証とは互換性が無しである為、無効にする
※多要素認証をテナント単位で設定している場合、無効にすることが可能か管理者に確認が
必要です。
1.Azure Active Directory 管理センターへ、全体管理者アカウントでサインインします。
2.画面左側メニューの「すべてのサービス」→「Azure Active Directory」をクリックします。
3.「ユーザー」をクリックします。
4.画面上部の「Per-user multifactor authentication」をクリックします。
5.一覧で対象ユーザーの「MULTI-FACTOR AUTHENTICATION の状態」で「有効」または「強制」
の場合は多要素認証が有効となっていますので、対象ユーザーをクリックし、「無効にする」を
クリックします。
6.「多要素認証を無効にしますか?」画面で「はい」をクリックします。
7.「閉じる」をクリックします。
構成要件を踏まえたうえで設定を各サービスで設定を行えばメール送信は可能となります。
実際、WebAppsで構成しているWordPress上でメール設定を行い、メール送信テストを行ったところ送信ができたことを確認いたしました。
しかしながら、1分あたり30個のメッセージというExchangeOnlineのメール送信の制限があり、ここらへんは注意が必要です。
Azureだけではないですが、例えば、プリンタなどからメール送信のみが必要となる場合があるかと思います。
ExchangeOnlineのライセンスが必要となりますが、迷惑メール対策などでSMTP接続が簡単にできないこともあるので、Office365などで利用できるアカウントがある場合などは送信用としてOffice365のライセンスを使うことも可能であると認識してもらえればと思います。
参考サイト
Microsoft 365 または Office 365 を使用してメールを送信するように多機能デバイスまたはアプリケーションをセットアップする方法