電子メール・メールサーバ

 

電子メールの概要

電子メールe-mail)とは、パソコン・スマートフォンなどの機器同士が、インターネットなどのネットワークを使ってテキストや画像をやり取りする機能のこと。
電子メールを送受信するための機能を提供するサーバをメールサーバという。
 

メールサーバの構成とメール送信フロー

プロトコル

プロトコル名役割
SMTP (Simple Mail Transfer Protocol)メールを送信する。
POP (Post Office Protocol)メールを受信する。 サーバ上のメールをダウンロードして閲覧する。
IMAP (Internet Message Access Protocol)メールを受信する。 サーバ上のメールをダウンロードせずに閲覧する。
 

機能

機能名役割
MUA (Mail User Agent)ユーザがメールを作成したり、受信したメールを読んだりするためのインターフェース。
MSA (Mail Submission Agent)メール送信を受けつけ、ユーザ認証・エラーチェックを実施する。
MTA (Mail Transfer Agent)メールを配送する。 メール送り先のIPアドレスをDNSサーバから参照する。
MDA (Mail Delivery Agent)受信したメールをメールボックスに格納する。
MRA (Mail Retrieval Agent)ユーザを認証し、メールボックスからメールを取り出す。
 
 

メール文の構成

メールは以下の3つの領域で構成されている。
  • エンベロープ(Envelope):メールの宛先・送信先情報
  • ヘッダ(Header):
  • ボディ(Body):実際のメッセージ
 
メール文一例 説明
エンベロープ
(Envelope)
mail from: [email protected] 送信者のアドレス(メール送信に失敗した場合のエラーメール送信先)
rcpt to: [email protected] 受信者のアドレス
【空行】
ヘッダ
(Headers)
Return-Path: <[email protected] エラー発生時のメールの送り先
Received: from msA.aaa.com ([12.34.56.78]) 送信者のドメインとIPアドレス
   by msB.bbb.com with esmtp id xxx-yyy-zzz 受信サーバのドメイン
   for [email protected]; 最終的な受信者のアドレス
From: [email protected] 送信者のアドレス
To: [email protected] 受信者のアドレス
Subject: Hello
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
【空行】
ボディ
(Body)
はじめまして!こんにちは!

 

メールの暗号化手法

PGP(Pretty Good Privacy)

公開鍵暗号方式を利用してファイルやメールの暗号化・認証・改ざん検知を行う。
RFC 4880として標準化。
信用の輪(Web of Trust)という考えに基づく。
公開鍵を用意する単位:メールアドレスごと
 

S/MIME(Secure/Multipurpose Internet Mail Extensions)

公開鍵暗号方式を利用して添付ファイルやメール文の暗号化・認証・改ざん検知を行う。
送受信者のメールソフトが規格に対応している必要有。
第三者機関のディジタル証明書(S/MIME証明書)を事前に共有する必要有。
PKCS(Public Key Cryptography Standard)に従って暗号化・署名を行う
CMS(Cryptgraphic Message Syntax):暗号化・署名に使用するフォーマット
公開鍵を用意する単位:メールアドレスごと
 

SMTP over TLS

「メールソフト~送信元メールサーバ」・「送信元メールサーバ~送信先メールサーバ」のそれぞれでセッションを確立。
公開鍵を用意する単位:メールサーバごと
 

プロトコルの脆弱性対策

SMTPの脆弱性への対策

SMTP-AUTH

ユーザ認証機能が追加されたもの。

POP before SMTP

メール送信前にPOP3によるユーザ認証を行う。

OP25B (Outbound Port25 Blocking)

ISP管理下のネットワークからISP管理外のネットワークに向けて送信されるスパムメールを制限する。
サブミッションポート:OP25Bの例外を通すためのポート
 

送信ドメイン認証

送信元SMTPサーバを認証。

POP3の脆弱性への対策