SMTPサーバーの接続試験 に続いて、今度はPOPサーバーの接続試験を行ってみます。
こちらもtelnetを使うことで簡単に動きを見ることができます。
(1)POPサーバーへの接続と認証
telnetを使って、POPサーバーへ接続します。
# telnet localhost 110
Trying 127.0.0.1...
Connected to pop_test.
Escape character is '^]'.
+OK Teapop [0.3.7] - Teaspoon stirs around again <1196821840.47F53345@Llywellyn>
> USER test
+OK Welcome, do you have any type of ID?
※パスワードを指定します。APOPの場合は、APOPコマンドを入力
> PASS *******
+OK I'm ready to serve you, Master.
(2)メールのリストを取得
下記の例ですと、469バイトのメールが1件あることになります。
> LIST
+OK These are my measures.
1 469
.
(3)メール内容の確認
PETRコマンドにメッセージ番号を続けることで、メッセージ番号のメールを表示させることができます。
> RETR 1
+OK 469
Return-Path: <test@fulldigit.net>
X-Original-To: test@fulldigit.net
Delivered-To: test@fulldigit.net
Received: from smtp_test.fulldigit.net (smtp_test [127.0.0.1])
by smtp_test.fulldigit.net (Postfix) with ESMTP id 14CD12B0574
for
<test@fulldigit.net>; Wed, 5 Dec 2007 11:47:05 +0900 (JST)
subject:Test Mail
from:test@fulldigit.net
to:test@xxx.co.jp
Message-Id: <20071205024723.14CD12B0574@smtp_test.fulldigit.net>
Date: Wed, 5 Dec 2007 11:47:05 +0900 (JST)
test mailbody
.
(4)メールの削除
DELEコマンドにメッセージ番号を続けることで、そのメッセージ番号のメールに削除フラグを立てます。
> DELE 1
+OK Bye bye, letter
(5)接続の終了
QUITコマンドで接続を終了します。DELEコマンドでメールの削除要求を行っていれば、この時点で削除されます。
> QUIT
+OK It has been a pleasure serving you.
Connection closed by foreign host.
(6)接続の終了
> QUIT
221 2.0.0 Bye
Connection closed by foreign host.
メールを受信する操作や原理は簡単ですね。
通常使っているメーラーは、コマンド部分を自動的に発呼して、メール本文をローカルに保存しているだけです。
その他にもいろいろなコマンドがあるので、参考まで
コマンド |
コマンドの動作 |
USER [メールボックス名] |
メールボックス名を入力してPOPユーザーの認証を受ける。
|
PASS [パスワード] |
SMTP認証 サーバとクライアントがSASL(RFC 2222)を利用して相互認証できるようになる。 |
APOP [パスワード] [ダイジェスト]
|
読み出すメールボックスと、ダイジェストを指定する。 |
STAT |
メールボックスにたまっているメール数とサイズを表示する。 |
LIST [メッセージ番号] |
メールボックスにたまっているメールのメッセージ番号とサイズを表示する。 |
RETR [メッセージ番号] |
入力したメッセージ番号のメール内容を参照する。 |
DELE [メッセージ番号] |
入力したメッセージ番号のメールに削除フラグを付ける。 |
RSET |
すべての削除フラグをクリアする。 |
QUIT |
削除フラグが付いたメールを削除して、接続を終了する。 |
|