gmailで独自ドメインでメール送信が出来ないトラブル

gmailでは"***@gmail.com"のアドレス以外にも、設定しておけば別のドメインのメールアカウントの送受信も出来るわけですが、数日前から「突然にメール送信が出来なくなった。いままで出来ていたのに。」といったヘルプ依頼がありました。

当初は回線・ネットワーク周りを疑ったのですが、返信されてくるエラーメールなどを見ると、どうも暗号化周りでgmail側で何か行われた可能性が高いと。主要ブラウザでは2020年の上半期にTLS1.0/1.1廃止を表明していますが、インフラのレイヤーでも何か動きがあるのでしょうか。

[名前] の機能を使用して、別のアドレスまたは別のエイリアスからこのメールを送信しようとしています。[名前] のアカウントの設定に誤りがあるか、設定が最新の状態ではありません。設定を確認して、もう一度送信してみてください。

応答:

TLS Negotiation failed, the certificate doesn’t match the host.

文言をそのまま解釈すると、メールを暗号化して配信する際にチェックする証明書のドメイン名が異なっているという事で、何らかのセキュリティー強化施策が行われたのだと思います。(ただ、個人的に幾つか持っているメールアドレスをgmailに仕込んで再現を試みたのですが、うまくいっていないのですね。全てメールが届きました。SMTPサーバーをホストしている会社が対応されたのかもしれません。)

参考までにopensslコマンドを使って、"mindtech.jp"のSMTPサーバーでTLS接続する際の証明書を確認してみます。(CN 以降のドメインはマスクしていますが、レンタルサーバー屋さんのドメインが入っています。)

私のケースでは上記の様に送信先ドメイン名と証明書のドメイン名は異なるのですけど、証明書のチェーンがつながっているので、問題なかったのかなと推察しています。この辺りが独自証明書をつかっているなどでうまくいっていない場合は、gmailの設定側のSMTPサーバーを上記のドメインに変更してみるとうまくいくケースもあるかもしれません。(業者さん次第ですね・・・)

ちなみに587番ポートですが、いわゆるSMTPプロトコルのサブミッションポートですね。SMTPの通常のポート番号は25番ですが認証が弱いため迷惑メール対策でブロックするのが一般的になりました。そこで「SMTP-AUTH」といった、メール送信時にユーザーID&パスワード認証を要求するようにして、587番を指定するのが一般的になりました。

このような経緯があるため、25番ポートをブロックしていないサーバー屋さんにホストしている場合はポート番号を587から25に変更すると送信できるようになる可能性もあります。(それはそれで大丈夫なのか?という疑問もありますが、暫定措置として。)

抜本的な対応としてはメールサーバーをホストしている業者さんの対応次第といった事になりそうですが、利用者側で試せることといえば、上記のSMTPサーバー名の変更やポート番号の変更でしょうか。それでダメなら業者さんの変更を検討する必要が出てきそうです。