メールの仕組み
こんばんは
メールサーバの仕組みと言われて、構成が頭に浮かべられなかったので、改めて整理しました。 WEBメールの仕組みを採用している企業が多いかと思いますが、この仕組みさえ知っておけば応用可能です。 メールサーバって何という人はこちらで勉強してください。
疑問1.SMTP接続でID/パスワード情報を送付して大丈夫なの?*1
SMTPは平文なので、盗聴可能。サーバ証明書を利用した、SMTPS(SMTP over SSL)という方式を利用すれば暗号化可能。 メール送受信に関しても同じことが言えますな。
SMTPSを利用する場合は以下の対応が必要
おまけ情報*3
- 証明書の正しさを確認しない(無視する)オプションがある(つまり、オレオレ証明書でもエラーにはならず暗号化できるということ)
- クライアントPCにクライアント証明書を求める方法も可能
- 送受信両方の機能を持つSMTPサーバの場合、SMTPS必須の設定(Postfix encrypt/verify/secure)にしてしまうと、先方がSMTPS非対応だと先方からメールが送信できないという事態が発生する
疑問2.MXレコードってなんだっけ
メールの仕組みを理解する!メールサービス用語集 ~基本編~ | コラム・活用方法 | BIGLOBE biz.
メールを受信した SMTP 中継サーバは、宛先メールアドレスの @ 以降のドメインネームの MX レコードを DNS サーバに問合せます。
メール送信先のドメイン情報をもとにMXレコードで名前解決をして、 そのメール送信先をさらにAレコードで検索して送信先のIPアドレスを取得する。
例えば、「example.com」というドメインのMXレコードが「IN MX 10 mx1.example.com」と設定されているとすると、xxx@example.com へのメールは mx1.example.com というサーバに送られることになります。 また、1つのドメインに対して、メールの送り先となるサーバが複数ある場合もあります。 その場合、MXレコード内に合わせて指定されている数字が小さいものから優先してメールが送信されます。例えば、MXレコードが、 IN MX 10 mx1.example.com IN MX 20 mx2.example.com
疑問3.SPFレコードなんつーのもあったよな
テキスト形式でDNSレコードに情報を埋め込む仕組みでしたね。 一般的に送信元IPアドレスの正しさを担保する目的で利用されます。
G Suite採用した時に先方で迷惑メール扱いにならないようにSPFレコード登録*4したのを思い出しました。
記載例*5
参考までにWEBメールはこんな感じらしい
*1:https://cs.zaq.ne.jp/JSS_KnowledgeDetail?an=000005069
*2:https://www.atmarkit.co.jp/fwin2k/win2ktips/651imppfxoutlook/imppfxoutlook.html
*3:https://qiita.com/jem_3/items/23199dfcb8c1f8b2a3be
*4:https://support.google.com/a/answer/33786?hl=ja
*5:https://salt.iajapan.org/wpmu/anti_spam/admin/tech/explanation/spf/