HTTP/2 200
server: nginx
date: Fri, 03 Oct 2025 03:33:03 GMT
content-type: text/html; charset=utf-8
vary: Accept-Encoding
content-encoding: gzip
槻ノ木隆の「BBっとWORDS」
|
 |
 |
|
 |
その20「POP3の役割と機能」
|
 |
 |
 |
 |
 |
■ POP3とは
POP3とは「Post Office Protocol version 3」の略で、SMTPサーバーから配信されたメールを取得するためのプロトコルです。version 3と呼ばれるからには、version 1/2も存在します。それぞれPOP/POP2と呼ばれていましたが、POP3とは互換性もなく、現在では事実上使われていません。実のところ、現在メールを取得するために使われるプロトコルは、ほとんどがPOP3とその派生型になるはずです。例外としてIMAP4というものがありますが、これは次回説明することにします。
■ POP3の役割

|
図1:POP3が利用される範囲
|
前回、SMTPの回で説明したとおり、メールの転送や配信はSMTPで行なわれます。具体的に言えば、すべてのメールサーバーにはSMTPサーバーと呼ばれるプログラムが実行されており、このSMTPサーバーがメールの転送や配信を行なってくれるわけです。しかし、SMTPは届いたメールをユーザーメールボックスに入れるまでしかしてくれません。
ユーザーメールボックス、というのはUNIX上の概念です。UNIXの場合、すべてのユーザーが電子メールを標準で利用できるようになっていますが、この際に個別のユーザーごとにメールを格納する場所のことをユーザーメールボックスと呼びます(図1)。
自分がそのUNIX上にログインしているのであれば、あとはメールボックスとなるファイルを直接開けば届いたメールが読み取れるわけです。「なぜ、POP3の機能もSMTPサーバーに含めていなかったんだ?」と考える人もおられるかと思いますが、UNIXのみを使っている限り、POP3は必要ないわけです。当初のインターネットがUNIXマシンを中心に発達してきたことを考えると、SMTPにPOP3の機能を含めなかったのは賢明だったかもしれません。
この結果、UNIXにログインせずにPCなどでメールを受信したいと思う場合、ユーザーメールボックスからメールを取り出して送り出す、という操作がUNIX側で必要になります。この際に利用されるプロトコルがPOP3で、取り出して送り出す操作を行なうのがPOP3サーバーとなります(図2)。
|
図2:中をもう少し見てみると
|
■ POP3の機能
POP3は、平文ベースのプロトコルです。ここで言う“平文”とは、人間が読んで理解できるような文字列を使った、という意味になります。実際、POP3を使ってPOP3サーバーと、クライアント上で動作するメールソフトが交信する様子を見ることも可能ですし、そういう行為を許すプロトコルになっています。また、POP3は人間が理解できる程度に簡単なプロトコルでもあります。具体的にPOP3で用意されているのは、以下のような簡単なコマンドになります。
USER |
ユーザー名を指定する |
PASS |
パスワードを指定する |
STAT |
(保存メール数など)メールボックスの現在のステータスを表示する |
LIST |
メールの一覧表示を行なう |
RETR |
1通分のメールを取り出す |
TOP |
1通分のメールの先頭何行分だけを取り出す |
DELE |
メールを削除する |
RSET |
ここまで行なってきた処理をリセット |
UIDL |
メール本文に含まれるUIDL(Unique ID Listing)を使ってのメールを一覧表示する |
NOOP |
何もしない |
QUIT |
POP3サーバーとの接続を解除する |
メールボックスからクライアントにメールを取り込むにはこれで十分ですし、メーラーによってはこれらを駆使することで、リモートメールボックスの機能を実現しているものすらあります。その意味では、現状ではそれほど不自由がないプロトコルといえます。
■ POP3の問題

|
図3:あまり問題がない場合
|
POP3の問題は、SMTPとよく似ていますが、平文で通信が行なわれるために傍受がしやすい点です。例えば、図3のように、プロバイダーのメールサーバーに自宅からADSLやFTTH、ISDNなどの公衆回線網を使って接続する場合は、これはあまり問題にはなりません。
というのも、これらの回線は他に盗聴されないことが保証されている仕組みなので、メールサーバーとドメインAが直結されているのに等しいからです。直結されていれば、簡単に傍受はできないので、平文でユーザー名やパスワードを送ってもそれほど問題はありません(もちろん、プロバイダーのサーバールームに侵入して盗聴なんて可能性がないわけではありませんが、確率的に低いこともあるのでここでは無視します)。
ところが、図4のようにメールサーバーとの接続にインターネットが挟まる場合は注意が必要です。例えば、出先のホットスポットでネットワークに接続してメールを受信する、といった場合です。この場合、途中にインターネットが挟まっているため、傍受される可能性は否定できません。一例をあげれば、ホットスポットの場合では同じホットスポットのエリアにあるノートPCで簡単に傍受できてしまいます。
そうなると、ユーザー名とパスワードが丸わかりになってしまうわけで、極めて危険です。もちろん、これはメールサーバーとクライアントの間でVPNやSSLといった暗号化通信を利用すれば防止できますが、どの場所でもこれらが使えるとは限りません。
そこで、ユーザー名とパスワードを暗号化したAPOP(Authenticated Post Office Protocol:MDS認証を利用したPOP3)や、KPOP(Kerberos Post Office Protocol:Kerberos認証を利用したPOP3)などが開発されました。最近はAPOPを利用できるプロバイダーもずいぶん増えてきています。
ただ、APOPの利用によりユーザー名やパスワードが傍受されてしまう危険性は、だいぶ減りますが、メール本文に関しては相変わらず平文のまま送られるため、メールの内容の傍受を防ぐことはPOP3系を使う限り不可能になっています。そのため、より安全性が必要とされる場合は、SSLなどを併用することが必要であり、実際いくつかのプロバイダーではオプションとして提供しているところもあるようです。
|
図4:問題が発生する可能性がある場合
|
 |
びび(右):
ブロードバンド用語を習得すべく、日々学習中の小学生。何とか自力 で学ぼうとはしているが、結局はワーズに助け船をだしてもらっている。
ワーズ(左):
言葉がキツくなるときもあるが、基本的には面倒見の良いお姉さんタイプ。びびとは家も近いこともあり、昔から何かと世話を焼いている。びびからは「ワーズさん」と呼ばれ、慕われている。 |
2004/12/20 10:54
槻ノ木 隆 国内某メーカーのネットワーク関係「エンジニア」から「元エンジニア」に限りなく近いところに流れてきてしまった。ここ2年ほどは、企画とか教育、営業に近いことばかりやっており、まもなく肩書きは「退役エンジニア」になると思われる。(イラスト:Mikebow) |
|
 |
 |
 |
Copyright (c) 2004 Impress Corporation, an Impress Group company. All rights reserved.
|
|
 |