今回はSMTPサーバーの勉強をしたい方に向けて説明をしたいと思います。
SMTPサーバーについて勉強するには、
スパムメールとの戦いの歴史を知ることがポイント
だと思います。
SMTPサーバーのリレー送信とクライアントメーラー送信はプロトコル的に違いがある?
SMTPサーバーには、二つの役割があります。
- SMTPサーバーがSMTPサーバーにメールする機能(メールのリレー)
- クライアントのメーラーがSMTPサーバーにメールする機能
です。
前者のSMTPサーバーからSMTPサーバーへ、まるで
バトンリレーのようにメールを渡す機能
を、「リレー」と言いますが、
メールのリレー送信と、後者のクライアントのメーラーによるSMTPサーバーにメールする機能は、違うように見えますが、
実はプロトコルとして違いがありません。
SMTPの中継の制限設定とは?
SMTPを違う見方をした時に、「中継するかどうか?」という見方が出来ます。
メールには、到達地点(TOの宛先メールアドレス)があり、そのTOの宛先終点以外のSMTPサーバーは、全部中継地点のメールサーバーになります。
一般的に、Fromアドレス用のメールサーバーは、みんなメールを中継しているのですが、
中継の制限とは、
メールをリレー送信する場合の制限
を意味します。
一般的には、中継の制限はIPアドレス(レンジ)で制限設定します。
メールサーバーに中継の制限設定をかけないとどうなるのか?
インターネットに公開されている、メールサーバーに中継の制限設定をしないと、誰でもそのメールサーバーをメール送信サーバーとして利用可能になってしまします。
スパムメールの踏み台(送信元メールサーバー)にされてしまいます。
SMTPサーバーのリレー(中継の制限設定)とSMTP認証(アクセス制御設定SMTP-AUTH)
スパムメール尾踏み台(送信元メールサーバーにされると)
- 迷惑メールののために無駄なリソースが使われる
- 迷惑メールの出発点となり信用や信頼がされなくなる
となってしまいます。
これを避けるために、
- 中継の制限設定(一般的には、送信元クライアントのIPアドレスを限定する)もしくは
- アクセス制御設定で認証する
という方法がとられます。
- 前者は、内部のメールサーバーを複数台使いメールのリレー送信する場合のSMTPサーバー用に設定されることが多く、
- 後者は、クライアント(ユーザ)のメーラー用に設定することが多いですね。
どちらも、簡単にメールサーバーを中継させない(リレーさせない)ための
使用者を限定させる制限設定
になります。
つまり、SMTPサーバーのリレー送信と、クライアントのメーラー送信は、プロトコル的には同じですが、制限設定が異なっていると言えます。
SMTPサーバー(メールサーバー)の歴史がわかればSPFもわかる
SMTPサーバーのスパムメールとの戦いの歴史を振り返ると、
SMTPサーバーにある、設定の意味が理解できます。
SMTPサーバーの歴史を振り返って紹介します。
昔はSMTPサーバーはSMTP認証なし(パスワード不要)でメール送信できた
実は、昔はSMTPサーバーはパスワード無しで誰でも自由に送信できるサーバーでした。
今でこそ、信じられないかもですが、メーラーの送信SMTPサーバーの設定には、ユーザー名もパスワードも不要でした。
この後、インターネットが普及し、スパムメールが流行りました。
中継の制限設定でIPアドレスを限定したりもしていましたが、不完全な設定となってしまったり、SMTPサーバーはスパムメールの踏み台の餌食にされました。
スパムメールの踏み台にされたのでメール送信にもSMTP認証が必要になった
そこで、クライアントのアクセス制御設定として、ユーザー名とパスワードによる認証機能
「SMTP-AUTH」
が登場しました。
POP3といったメール受信だけでなく、メール送信にも認証が必要になりました。
SMTPの送信元を区別するため25ポート以外にも追加された
SMTP-AUTHの登場に伴い、たくさんのクライアントを移行するにあたり長めの期間を設ける必要があったため、多くは
- 従来の25番ポートと
- 認証があるSMTP-AUTHの587番ポート ※
を使い分けました。
※ 587番ポート以外にも、465番ポートや、2525番ポートもあります。
今では、
- SMTP認証無しのメール送信が25番ポート使用で、
- SMTP認証があるメール送信が25番ポート以外を使用
となっていることが多いです。
前者(25番ポート)はSMTPサーバーやシステムのメール送信機能で使うことが多く、後者(25番ポート以外)はクライアントのメーラーで使用することが多いですね。
リレーでスパムメール踏み台にされないように多くのSMTPサーバーはリレーを禁止している
従来の25番ポートを使用したメールの送信には、SMTP認証を設けないことが多いので、メールのリレーについては、
当然、中継の制限設定(IPアドレス制限)されて
います。
リレー送信以外のメールは※、どこからでも(どこのIPアドレスからでも)受信せざるをえませんでした。
※ TOのメールアドレス先の終点SMTPサーバー。
Microsoft 365 または Office 365 を使用してメールを送信するように多機能デバイスまたはアプリケーションをセットアップする方法 | Microsoft Docs
それでもスパムメールの受信を防げないのでSPFレコードが登場
それでも、スパムメールが防げませんでした。
例えば、
TOのメールアドレス先の終点SMTPサーバーに直接メールを大量送信してしまえば、
スパムメールが出来てしまうからです。
そこで登場したのが、送信元のSMTPサーバーが由緒正しいSMTPサーバーであるかどうかを確かめる方法です。
その一つが、SPFという手法です。
SPFは、終点SMTPサーバーが、
Fromのメールアドレスのドメインに対し、送信元SMTPサーバーのIPアドレスがDNS登録(SPFレコード)されているか
を確認する方法です。※
最低限、DNSドメインの所有者でないとリレー送信できないということです。
仮に、DNSドメインを取得してまでスパムメールを送ってくる相手ならば、
その時は、そのドメインはブラックリストとしてブロックしてしまうことも出来ます。
※ 当然、終点SMTPサーバーが、スパムメールを気にしなければ、SPFレコードをチェックしないことも出来ます。
このように、SMTPサーバーとスパムメールの戦いの長い歴史が繰り広げられて現在に至るのです。