メールの受信テスト
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:
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
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 | 削除フラグが付いたメールを削除して、接続を終了する。 |