はじめに
実務でメールサーバー周りの設定をすることが増えてきたので、まとめてみました。
メール送信
- SMTPサーバー
- MTA(Mail Transfer Agent)
- ネットワーク上でメールを転送・配送するソフトウェア
- 代表的なもの
- Postfix
- sendmail
- MTA(Mail Transfer Agent)
- 「MIME」とは
- ASCII英数字以外の日本語や添付ファイルなどを使用できるようにした拡張仕様
送信元ドメイン認証技術
基本として押さえておくべきものは、SPF(Sender Policy Framework)とDKIM(DomainKeys Identified Mail)です。
- なぜ必要?
- 迷惑メールやスパムメールの防止
- 迷惑メールやスパムメールは、オープンリレーのメールサーバーから送られてくる
- 「オープンリレー」とは、「どのような宛先にでも自由に送信することができるインターネット上に公開されたメールサーバー」のこと
- SPF
- IPアドレスで認証する機能
- ネームサーバーにSPFレコードを設定する
- DKIM
- 電子署名を用いて認証する機能
- ネームサーバーに電子署名の検証に必要な公開鍵情報を登録しておく
その他、「DMARC」という技術もあります。
SPFとDKIM、どちらかだけ設定すればいいの?
どちらも必要です。SPFに加えてDKIMを設定しておくと、メールの改ざんがされていないかまで確認することができるからです。
詳しくは、こちらのページがなりすましメールの仕組みとともに、とても丁寧に解説してくれています。
ついでに、なりすましメールの知識としては、「メールの送信元情報を提供する『エンベロープFROM』と『ヘッダFROM』のうち、『ヘッダFROM』を悪用することで受信者を騙そうとしている」 ということを押さえておけば良さそうです。
メール受信
- POPサーバーやIMAPサーバー
- メール受信時のソフトウェア
- Dovecot
POPサーバーとIMAPサーバーの違いは、下記の通り。( https://www.kagoya.jp/howto/it-glossary/mail/smtpserver/ から引用)
POPサーバーがメールサーバーから受信者のパソコンなどにメールをダウンロードさせるのに対して、IMAPサーバーはメールサーバーにメールを保存したまま読むことを可能にすることです。パソコンよりデータ保存容量が少ないスマートフォンなどでメールを読む際は、特にIMAPサーバーがよく利用されます。
バウンスメール
送信先に受け取られなかったことを送信元に知らせるためのメールのことです。送信元に送られないこともあります。
- ハードバウンスとソフトバウンス
- ハードバウンス
- 恒久的なエラーによるメールの不達
- ソフトバウンス
- 一時的なエラーによるメールの不達
- ハードバウンス
備忘録
実務でPostfixの配送経路変更を行ったので、メモ。
- /etc/postfix/transportの編集
- 「example.com smtp:[test.com]:25」の意味は、「『example.com』ドメイン宛のメールは、smtpプロトコルにて『test.comの25番ポートに転送する』」という意味
- 変更を反映させるために「postmap /etc/postfix/transport」
- postmapコマンドを使ってhash化したdbを作成している。stringsコマンドを使い、transport.dbの内容を確認できる
- postfixを再起動「systemctl restart postfix」
- example.comであるアドレスにメールを送信
- postfixのログを確認する
3. https://www.depthbomb.net/?p=3342
参考
- SMTPサーバーとは?IMAPやPOPとの違い&基本の設定方法
- 正しいSMTPポートの選び方(ポート番号25、587、465、2525)
- Postfixとは?メールサーバー構築方法と基本設定
- 【#67 CCNA CCNP ネットワークスペシャリスト対策】SPF DKIMってなんだ?
- メール転送エージェント (MTA)とは
- 【図解】初心者にも分かるメールの仕組み~SMTP/POP/IMAPの違い, リレーの構成, 用語について~
- 送信ドメイン認証(SPF / DKIM / DMARC)の仕組みと、なりすましメール対策への活用法を徹底解説
- MTAとは? メール転送エージェントの概要と機能、代表的な製品について解説
- 「エンベロープFrom」と「ヘッダFrom」の違いとは?
-
ハードバウンス、ソフトバウンスって何が違う?
* 「MXレコード【DNSレコード】とは|「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典」