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