POP3プロトコル(Post Office Protocol) ====================================  RFC1725として記述され、インターネットに対して継続的な接続を持たない一般ユーザ に対してのメール受信手段を提供する。直通電話回線で接続された大型コンピュータから ダイアルアップIP接続のデスクトップパソコンへと移る現在ではこのスタンダードは最も 有効なメール受信手段である。TCPサービス名POP3、ポート番号110番。 ●USER 個人ユーザのメールボックスを開く C:USER newbie S:+OK システム上にそのメールボックスがあった場合 S:-ERR システム上にそのメールボックスが無い場合 どのメールボックスにアクセスするのかをここで入力する。 最初に使われるコマンドである。 ●PASS メールボックスのパスワードの送信 C:PASS (^-^) S:+OK パスワードが認証された場合 S:-ERR パスワードが認証されなかった場合 USERコマンドに続いて実行されるべきコマンドである。一つのメールボックスにパスワー ドは一つのみである。複数の引数はまとめて一つのパスワードとして受け取られる。 パスワードが何度も認証されない場合はサーバによっては落とされる場合もある。 ●STAT メールボックスに届いたメールの一覧を表示する C:STAT S:+OK XX YYY ユーザが認証されれば、このSTATコマンドで届いたメールの数やサイズを見ることができ る。メールクライアントはまずこのコマンドを実行し、届いたメールの数やサイズを調べ アプリケーションの前処理を行う。XXはメールの番号、YYYはその番号のメールのサイズ。 ●LIST メールボックスに届いたメールの一覧を表示する C:LIST S:+OK xx yyy S:-ERR No message for number given(指定の番号のメールが存在しない時) 特定のメッセージのサイズを表示する。LISTに続いてパラメータ(ここではメッセージ番 号)を与えるとそのパラメータのメールのサイズと番号を表示する。またパラメータを与 えない場合はSTATコマンドと同等の動作もする。 ●RETR 指定のメール番号のメールを読む C:RETR 1 S:+OK…以降メッセージ本文が続く S:-ERR Message does not exist(指定の番号のメールが存在しない時) 指定のメール番号のメールの内容を表示する。メールの本文を表示し終わると、ピリオド とがある一行を表示する。 ●DELE 指定のメール番号のメールを削除する C:DELE 1 S:+OK 削除された S:-ERR Message does not exist(指定の番号のメールが存在しない時) 指定のメール番号のメールを削除する。実際は削除マークを付けるだけで削除は行わない 削除が行われるのはQUITコマンドが実行されてからである。RSETコマンドを行うことで、 削除マークの付けられたメールを有効にすることが出来る。 ●NOOP 現在ユーザーがPOP3で繋いでいることをサーバに知らせる C:NOOP S:+OK これを使用することによって、サーバからのタイムアウトを防ぐことが出来る。何らかの 処理をサーバが行っていた場合には、サーバとクライアントとの接続が有効かどうかを調 べる必要が出てくる。 ●RSET 処理の取り消し C:RSET S:+OK DELEコマンドを実行した場合、メールに削除印が付きQUITコマンドを実行後、削除される それまでにRSETコマンドを実行すればメールの復旧が出来る。何らかの手違いでメールを 削除してしまってもQUITコマンドを実行していなければRSETコマンドで復旧することが出 来る。 ●QUIT セッションの終了を行う C:QUIT S:+OK DELEによって削除されたメールの復旧はこの時点で不可能になる。このコマンドでクライ アントとサーバのやり取りが終了する。SMTPと同様、このコマンドはDISCONNECTではない のでクライアントはDISCONNECTを実行してサーバとの接続を切らなければならない。 ●プロトコルセッション S:+OK POP3 Server Ready C:USER hacker S:+OK User recognized, send password C:PASS bunghole S:+OK Password Accepted C:STAT S:+OK 1 message (427 octets) C:RETR 1 S:+OK 427 octets Dear Hacker You suck...Son of a bitch. Fuck you! . C:DELE 1 S:+OK message 1 deleted C:QUIT S:+OK sucker.co.jp [mailbox empty]