Presentation is loading. Please wait.

Presentation is loading. Please wait.

神戸大学 理学部 地球惑星科学科 4 年 坂廼邉 翼 (地球および惑星大気科学研究室)

Similar presentations


Presentation on theme: "神戸大学 理学部 地球惑星科学科 4 年 坂廼邉 翼 (地球および惑星大気科学研究室)"— Presentation transcript:

1 神戸大学 理学部 地球惑星科学科 4 年 坂廼邉 翼 (地球および惑星大気科学研究室)
メールサーバとメールの配送の仕組み 神戸大学 理学部 地球惑星科学科 4 年 坂廼邉 翼 (地球および惑星大気科学研究室)

2 目次 1 . メール送受信の大まかな流れ 2 . MTA , MDA , MUA 3 . メールの送受信とプロトコル 4 . まとめ
SMTP POP IMAP 4 . まとめ

3 メール送受信の大まかな流れ

4 手紙の大まかな流れ (1)自分が手紙を書きます (2)ポストへ投函します (3)投函されたものは地元の郵便局へ集められます (4)地元の郵便局から、宛先の地域の郵便局へ配達されます (5)そこで私書箱へ割り振られます (6)相手が取りにきます

5 メール送受信の大まかな流れ 送信者はメールソフトを使ってメールをメールサーバに送る 宛先アドレスを管理するメールサーバへメールを転送する
受信者は自分のメールサーバに受信メールの有無を問い合わせる 受信メールが有れば、そのメールを受信 する

6 MUA, MTA, MDA

7 MUA とは

8 MUA とは MUA ( Mail User Agent ) ユーザーがメールを扱うためのプログラム メールの閲覧、作成 メールの送受信
例として Thunderbird, Outlook Express ...etc. *手紙を送る場合 ・ 手紙を書いたり、受け取った手紙を管理したりする役割 ・ 書いた手紙を郵便局のポストに投函する役割 ・ 郵便局から手紙を取ってくる役割

9 MTA とは

10 MTA とは MTA ( Mail Transfer Agent ) メール転送するプログラム 配送経路の決定
メールをユーザーが受け取るまで保管 例として sendmail , qmail * 手紙を送る場合 ・ 郵便局に相当し, 手紙を郵便局間で郵送する役割 ・ 私書箱に 振り分けるような役割 

11 MDA とは

12 MDA とは MDA ( Mail Delivery Agent ) リモートMDA ローカルMDA
他のメールサーバへのメールの配送するプログラム ローカルMDA メールをメールボックスに格納するプログラム LDA(Local Delivery Agent)とも呼ばれる * 手紙を送る場合 ・ 管轄外の手紙を他の郵便局に届ける役割  ・ 郵便屋さんに相当し, 手紙を私書箱に振り分ける役割

13 メールの送受信とプロトコル

14 プロトコルとは ネットワークを介して通信する際の取り決めの集合  メールの送受信では SMTP, POP, IMAP 

15 SMTP とは SMTP(Simple Mail Transfer Protocol)
MUA - MTA, MTA – MTA 間でのメールの転送に使われるプロトコル メールの転送手段を定めている

16 SMTP 通信で転送されるメールの構造 エンベロープ ヘッダ 本文 エンベロープとヘッダの情報は 異なってもよい SMTP エンベロープ
メールの転送に使われる宛先と送信者の情報 SMTP コンテンツ(メール本体) ヘッダ 送信者や送信日時などの情報 MUA 上で表示される 本文(body) エンベロープとヘッダの情報は 異なってもよい エンベロープ ヘッダ 本文

17 SMTP 通信の内容 クライアントのコマンドとメールサーバーからのレスポンスで通信が行われる クライアント(hoge.com)
サーバ(mail.hoge.jp) (送信先サーバに接続) EHLO hoge.com MAIL FROM:(送信元) RCPT TO:(宛先) DATA (ヘッダ) (メール本文) . QUIT 220 mail.hoge.jp ESMTP 250 mail.hoge.jp 250 OK 354 go ahead 221 mail.hoge.jp 接続を確認 → 送信者アドレス指定 → 宛先アドレス指定 → メール本文の開始 → 改行 → 本文終了は「.」 → 処理の終了 → ・本文中に「.」のみの行があったら rfc5321_4.5.2 透過性 送信前に先頭の文字を確認し、ピリオドなら先頭に追加のピリオドをひとつ挿入 SMTP サーバー(受信側) では行が単独のピリオドから成る場合、メール終了指示として扱われる。 最初の文字がピリオドで、その行にそれ以外の文字が含まれる場合、最初の文字は削除される。 ・コロンの前後には空白は入れられない ・ESMTP: 拡張SMTP. 現在はSMTPの仕様書の中に含まれる(必須扱い) 「現代の SMTP 実装は基本的な拡張メカニズムをサポートしなければならない(MUST)。例えばサーバーは特別な拡張を実装していなくとも EHLO コマンドをサポートしなければならない(MUST)し、クライアントは HELO ではなく EHLO を優先的に使用するべきである(SHOULD)。」(FRC 拡張モデル ) 「拡張は、RFC2821にまとめて取り込まれ、現在のSMTPは、事実上ESMTPに当たります。」 接続を開始する 「HELO」コマンドを送り、セッションを開始する 「MAIL」コマンドを送り、メールの送信者を通知する 「RCPT」コマンドを送り、メールの受信者を通知する 「DATA」コマンドを送り、メッセージの送信開始を通知する 受信先から送信確認が到着したら、実際にメッセージの送信を開始する 「CR LF.CR LF」(2つのCR LFの間にピリオドだけがある)を送り、転送メッセージが終了したことを通知する 「QUIT」コマンドを送り、セッションを終了する

18 SMTP におけるメールの送受信 MUA -> MTA MTA -> MTA
実際コマンドやレスポンスによって転送処理を行う処理はメールソフトが行ってくれる MTA -> MTA 基本的には MUA -> MTA と同じである メールの受信者が自己のサーバ内にある場合は, ローカルMDA によってメールボックスへと格納される

19 POP, IMAP とは

20 POP とは POP(Post Office Protocol) メールサーバーからメールをダウンロードするためのプロトコル
受信したメールはサーバーから削除される 残すように設定することも可能 複数 PC で管理が困難 パスワードを平文で送る 盗聴防止のため POP over SSL などで認証を暗号化するのが一般的

21 POP によるメールの受信 認証 トランザクション アップデート(切断)
クライアントのコマンドとメールサーバーからのレスポンスで通信が行われる 認証 ユーザー名とパスワードを使用 トランザクション メールの情報取得や受信など QUIT コマンド サーバー上のメールを削除しアップデート状態に アップデート(切断) POP3にはすでに明白になっているいくつかの問題点がある。以下にまとめよう。 モバイル環境での利用 POP3では、基本的にメールデータをローカルPCへダウンロードするだけだ。その後、サーバにメールは残らない。ユーザーが複数の方法やデバイスでメールを読みたくなった場合に、一度メールを取り込んで消してしまうと、ほかのアクセスからはそのメールを読む手段がない。そのつど、ほかのデバイスからのアクセスのことを考慮しなくてはならないのは、大きな負担である メールボックスやフォルダの管理 例えば、送信済みのメールや一度ダウンロードしてしまったメールのフォルダでの管理は、ローカルPC上でしか行えない。これは、基本的にPOP3はメールのダウンロード機能しか提供しないからで、別のPCでの送信済みメールをほかのPCから確認する手段は存在しない ネットワークや処理への負荷 ヘッダやメール全体のダウンロード機能しかないため、「ネットワークが遅いから巨大な添付ファイルをダウンロードしたくない」などのニーズに対応できない  これらの問題点を解決するには、1つの考え方しかない。メーラに完全にメールを取り込むのではなく、サーバにメールを保管し続けメーラからサーバのメールボックス全体を管理可能にする方法だ。つまり、これがIMAP4の基本的な出発点である。

22 IMAP とは IMAP (Internet Message Access Protocol) POP の問題点を解消し, 多機能化したもの
サーバー上でのメール管理を基本としている IMAP の特徴 メールの一部分のみの受信が可能 ヘッダのみ, 添付ファイル以外 など サーバ上のデータと常に同期 サーバ上に複数のメールボックスを作成可能 サーバー上での検索機能 既読, 送信済みなどの属性をメールに付加できる ・認証方法には、CRAM-MD5, Kerberosなどがある。 ・POP3 でもヘッダのみ, ヘッダ+本文(行数指定) の受信は可能(TOP)

23 まとめ メール送受信に関するプログラム メール送受信に関するプロトコル MUA : ユーザがメールの作成や送受信などを行うためのプログラム
MTA : メールを受信し配送経路を決めるためのプログラム MDA : メールを配送するためのプログラム メール送受信に関するプロトコル SMTP : メール送信に関わるプロトコル POP, IMAP : メール受信に関わるプロトコル IMAP はメールサーバ上でメールを一元管理

24 補足 . SMTPレスポンス一覧その1 211 ・・・ システムのステータス , システムヘルプ応答
214 ・・・ ヘルプメッセージ , コマンド使用方法 220 ・・・ パラメータに指定されるドメイン名のサーバを準備 221 ・・・ コネクションのクローズ ( QUIT への応答 ) 250 ・・・ リクエストされたコマンドの終了 251 ・・・宛先として指定されたアドレスがローカルに存在しないことを示    す 252 ・・・VRFY コマンドでユーザーが確認できないことを示す ユーザーがローカルに存在しない メールの送信は可能である 354 ・・・ メールデータの入力を促す 最後は <CR> <LF> <CR> <LF> で終了すること

25 補足 . SMTPレスポンス一覧その2 412 ・・・ ホストのメールサービスが起動していないことを示す TCP コネクションを切断
メール転送中のサーバのシャットダウン時もこのレスポンス 450 ・・・ メールボックスがビジーであるため、リクエストされたコマンドが実    行されない 451 ・・・ ローカルエラーのため、指定コマンドが実行されない 452 ・・・ リクエストされたコマンドは実行されない 500 ・・・ コマンドの文法エラー 501 ・・・ 指定コマンドのパラメータエラー

26 補足 . POPでのコマンド&レスポンスその1 コマンド一覧 Authentication : クライアントの確認
USER ・・・ ユーザー名 PASS ・・・ パスワード APOP ・・・ USER と PASS の代わりに用いるユーザーの認証のためのコマンド Transaction : メッセージに対する操作 STAT ・・・ 受信メール数とそのサイズの表示要求 LIST ・・・ 受信メールの一覧と各メールのサイズの表示要求 RETR ・・・ 指定した受信メールの転送要求

27 補足 . POPでのコマンド&レスポンスその2 コマンド一覧 Update レスポンス + OK 状態表示 ・・・ 肯定反応
QUIT ・・・ 接続を切断して終了    ※ DERE で指定したメールがあれば消去 レスポンス + OK 状態表示 ・・・ 肯定反応 - ERR 状態表示 ・・・ 否定反応

28 補足 . エンベロープとヘッダーの関係 図はSMTP配送の仕組みとsendmail より (

29 参考文献 1 2011年度 ITPASS セミナー勉強会資料 メールサーバとメール配送の仕組み 」 船橋大亮、 小林英貴
Linuxexpert - SMTP配送の仕組みとsendmail-MailServer/SMTP配送の仕組みとsendmail-PukiWiki メールを受け取る仕組みはどうなっていますか??|電子メールの秘密 RFC日本語版リスト 1939, 2060, 1939, 5321, 5322 を参照した

30 参考文献 2 ラスト・ワン・ホップ プロトコル「POP3」 モバイル時代の優等生「IMAP4~前編」
モバイル時代の優等生「IMAP4~前編」 メッセージをあて先まで転送する---SMTP・その1(第50回):TCP/IP再入門 シロヤギもクロヤギもいい加減にしろよ手紙を届けるのがどんだけ大変か分かってんのかよ   

31 参考文献 3 ネットワークの基本がまるごとわかる本 発行人 福岡俊弘 , 編集人 土屋信明 , 発行所 株式会社アスキー


Download ppt "神戸大学 理学部 地球惑星科学科 4 年 坂廼邉 翼 (地球および惑星大気科学研究室)"

Similar presentations


Ads by Google