開発環境でのメール送信テスト方法とSMTP設定の挙動について

質問

🕓 事例公開日 : 2025-10-14

【背景】

開発環境でワークフロー等のメール送信機能をテストしたいが、誤って実際のユーザーにメールが届いてしまうリスクを避けたい。そのため、これまでSMTPサーバーを未設定にしてメールが送信されないようにしていたが、最近メール関連の調査依頼が増えており、本番に近い環境でテストできる方法を探している。



Q1. 開発環境でメール送信テストを安全に行う方法はありますか?

開発環境にSMTP4dev等のテスト用メールツールを導入できますか?または、別サーバーに構築した仮想メールサーバーを設定することは可能でしょうか?実際にはメールを送らず、送信内容だけを確認できる環境を作りたいです。

Q2. javamail-config.xmlでhost属性を空にしてもメールが送信されるのはなぜですか?

メール送信を防ぐため、javamail-config.xmlのhost属性を空文字(host="")に設定していましたが、ユーザーにメールアドレスを設定したところ実際にメールが送信されてしまいました。この設定だけではメール送信を止められないのでしょうか?

Q3. 外部メールサーバーへの接続条件を教えてください

個社利用環境から外部のメールサーバーに接続する場合、どのような条件を満たせばアクセス可能ですか?AWSの制御が複雑で、接続可能な環境の調べ方がわかりません。

回答

A1. 開発環境でメール送信テストを安全に行う方法はありますか?

サービス仕様上、環境内に任意のソフトウェアをインストールすることはできません。そのため、以下の方法を推奨します。

推奨手順:

1. 個社利用環境からアクセス可能な場所にSMTP4dev等のダミーSMTPサーバーを構築する
2. javamail-config.xml、またはシステム管理者画面の「SMTPサーバ設定」で、構築したサーバーを指定する

なお、外部メールサーバーの構築・運用は製品外機能となるため、サポート対象外です。詳細仕様はメールサーバー側のドキュメントをご確認ください。

また、SaaS形式でダミーSMTPサービスを提供している外部サービスもあります。お客様ご自身で構築せずに利用できる選択肢としてご検討ください(こちらもサポート対象外となります)。



参考ドキュメント: ・メール設定
https://document.intra-mart.jp/library/iap/public/configuration/im_configuration_reference/texts/im_javamail/javamail-config/index.html ・SMTPサーバ設定
https://document.intra-mart.jp/library/iap/public/operation/system_administrator_guide/texts/apply_guide/apply_guide_15.html ・標準ドメイン利用時の送信元メールアドレスについて
https://aws.accel-mart.com/service_manual/texts/09_limitations/index.html#accel-mart-com



A2. javamail-config.xmlでhost属性を空にしてもメールが送信されるのはなぜですか?

調査の結果、host属性を空文字(host="")に設定した場合でも、メールが送信されることを確認しました。

原因:

host属性が空文字の場合、「host="localhost"」として処理され、メールが送信される仕様となっています。これはintra-mart Accel Platform内で使用しているメール送受信ライブラリ「JavaMail」の仕様によるものです。

intra-mart Accel Platformでは、host属性に空文字を設定する使用方法は想定しておらず、空文字が指定された場合の処理も実装していません。そのため、この場合の動作はJavaMailの仕様に準拠します。

JavaMail APIのFAQにも、「mail.smtp.host」プロパティが未設定の場合は"localhost"への接続を試行する旨の記載があります。



対応方法:

host属性は必須入力項目です。外部メールサーバーの導入検討結果を踏まえ、host属性にはlocalhostまたは意図したSMTPサーバーを明示的に設定してください。



参考ドキュメント: ・SMTPサーバ設定
https://document.intra-mart.jp/library/iap/public/configuration/im_configuration_reference/texts/im_javamail/javamail-config/index.html#smtpサーバ設定



A3. 外部メールサーバーへの接続条件を教えてください

Accel-Mart Plusではアウトバウンド通信に制限を設けていません。そのため、個社利用環境からネットワーク的に到達可能な場所であれば、外部メールサーバーを設置できます。

接続可能な環境例:

・インターネット経由でアクセスできる環境
・プライベートネットワーク接続済みの環境

この記事は役に立ちましたか?
0人中0人がこの記事が役に立ったと言っています
Powered by Zendesk