POP3、SMTP、IMAP – 電子メールプロトコル

米国ESOFENITBR 2017年11月

電子メールの概要


メールは、最も使用されるインターネット・サービスであると考えられています。だから、TCP / IPプロトコルスイートは、簡単にネットワーク上のメールルーティングを管理するためのプロトコルの範囲を提供しています。

SMTP


インクルード SMTP簡易メール転送プロトコル, 訳します 簡易メール転送プロトコル)接続をポイントツーポイントでサーバーから別のサーバーにメールを転送するための標準プロトコルです。

これは、TCP / IPフレームにカプセル化されたオンラインモードで動作しているプロトコルです。メールは、受信者のメールサーバーに直接配信されます。 SMTPは、SMTPサーバ(デフォルトポート25)に送られたテキストコマンドを介して動作します。クライアントから送信されたコマンドの各(ASCII文字列で検証 CR / LF, )キー入力押すのと同じ数と記述メッセージからなるSMTPサーバからの応答が続きます。

ここでは、SMTPサーバーへの電子メールの送信要求のシナリオです

  • SMTPセッションを開くと、送信される最初のコマンドは、コマンドです HELO スペースが続く(表記 )そして、あなたのマシンのドメイン名(と言って "こんにちは私は、このようなマシンです")、そして(注意入力を検証 )。 2001年4月以来、RFC 2821で定義されたSMTPプロトコルの仕様は、HELOコマンドがコマンドに置き換えられていることが必要です EHLO.
  • 2番目のコマンドは、 "MAIL FROM:" 送信者の電子メールアドレスを入力します。コマンドが受理された場合、サーバーはメッセージを送信します "250 OK"
  • 以下のコマンドであります "RCPT TO:" 受信者の電子メールアドレスを入力します。コマンドが受理された場合、サーバーはメッセージを送信します "250 OK"
  • オーダー DATA 変速機の第3段階です。これは、メッセージ本文の始まりを告げます。コマンドが受理された場合、サーバは、番号の中間メッセージを返します。 354 メール本文の送信は一点を含む線で示されるメッセージの最後に次の行のすべてを開始すると考えることができることを示しています。電子メールの本文は、おそらく次のヘッダーの一部が含まれています。
    • 日付
    • 主題
    • CC
    • BCC
    • から

コマンドが受理された場合、サーバーはメッセージを送信します "250 OK"
ここでは、クライアント(C)とSMTPサーバー(S)との間にサンプルのトランザクションがあります
S:220レディsmtp.commentcamarche.net SMTP
C:EHLO machine1.commentcamarche.net
S:250 smtp.commentcamarche.net
C:MAIL FROM:

S:250 OK
C:RCPT TO:

S:250 OK
C:RCPT TO:

S:550、ここではそのようなユーザー
C:DATA
S:354開始メール入力;で終わります。

C:件名:こんにちはリトル
C:こんにちはMeandus、
C:お元気ですか?
C:
C:すぐにお会いしましょう!
C :.

S:250 OK
C:QUIT
R:221 smtp.commentcamarche.net閉鎖送信


SMTPの基本的な仕様は、すべての送信文字が7ビット上のASCIIコードでエンコードされ、8ビット目が明示的にゼロに置かれることを望みます。だから、アクセント付き文字を送信するためには、MIMEの仕様を統合するアルゴリズムに頼ることが必要です。

  • BASE64 添付ファイルについて
  • quoted-printable形式 の(略 QP)メッセージ本文内の特殊文字



ポート25のSMTPサーバー上の単純なTelnetを使用してメールを送信することが可能です。
telnet smtp.commentcamarche.net 25(上記に示したサーバが故意に存在しない、あなたは交換してくださいすることができます commentcamarche.net )インターネットプロバイダのドメインによる

ここでは主要なSMTPコマンドの概要です



CommandeExempleDescription
HELO(EHLO今)EHLO 193.56.47.125IPアドレスまたは送信者のドメインのコンピュータを使用して識別
MAIL FROM:MAIL:[email protected]送信者のアドレスの識別
RCPT TO:RCPT:[email protected]受信者のアドレスの識別
DATAメッセージデータメール本文
QUITQUITSMTPサーバーがリリース
HELPHELPサーバーでサポートされているSMTPコマンドのリスト



すべてのSMTPプロトコルの仕様はRFC 821で定義されている(2001年4月以降、SMTPプロトコルの仕様はRFC 2821で定義されています)。

POP3


インクルード POPポストオフィスプロトコル それがつながることができます "ポストオフィスプロトコル"その名は、リモートサーバー(POPサーバー)上で彼女のメールを取得するために行く示唆するように)できます。それは、常にメールをオフラインを確認するために、インターネットに接続されていない人々のために必要です。

それぞれポート109および110と根本的に異なるテキスト・コマンドを使用して実行が割り当てられ、このプロトコル、POP2とPOP3の二つの主なバージョンが存在します。

SMTPの場合のように、POP(POP2およびPOP3)は、POPサーバーに送信されたテキストコマンドを介して動作します。クライアントから送信されたコマンドの各(シーケンスによって検証 CR / LF)は、キーワード、おそらく1つ以上の引数を伴うからなり、POPサーバの応答番号と記述メッセージで構成されて続いています。

ここでは、メインPOP2コマンドをまとめた表は、次のとおりです。


POP2コマンド
オーダー説明
ハロー送信側のコンピュータのIPアドレスを使用して識別
FOLDERボックス名は相談すること
READメッセージ番号の読み取り
RETRIEVEメッセージ番号は回復します
SAVE保存するメッセージ番号
DELETEメッセージ番号を削除します
QUIT出力POP2サーバ



POP3コマンドの概要:


POP3コマンド
オーダー説明
ユーザーIDこのコマンドは、認証します。それはそれは、言って、サーバー上のユーザーを識別する文字列で、ユーザーの名前が続かなければなりません。 USERコマンドは、コマンドの前にしなければなりません PASS.
PASSパスワードオーダー PASS, 名前は、ご注文時に指定したユーザのパスワードを指定します USER 事前に。
STATサーバー上に含まれるメッセージに関する情報
RETRメッセージ番号は回復します
DELEメッセージ番号を削除します
LIST [MSG]表示されるメッセージの数
NOOPアイドル時のオープン接続を維持します
TOP 表示制御 n個 数引数として指定されるメッセージの行。サーバからの肯定応答の場合には、最終的には空行、次いで、メッセージのヘッダを返すと n個 メッセージの最初の行。
UIDL [MSG]おそらく、引数に与えられたメッセージについての情報を含む行を送信するためにサーバーに要求します。この行は、と呼ばれる文字列が含まれてい 一意の識別子のリスト, 一意的に関係なく、セッションの、サーバ上のメッセージを識別することを可能にします。オプションの引数は削除されていないメッセージを言っているPOPサーバー上の既存のメッセージ、)に対応する番号です。
QUITオーダー QUIT POP3サーバーの終了を要求します。これは、削除済みとしてマークされたすべてのメッセージを削除し、このアクションのステータスを返します。



POP3プロトコルは、このようにユーザー名とパスワードを使用して認証を管理し、パスワードだけでなく、電子メールが、中に循環するので、それは安全ではないことで反対ではありませんネットワーク上の光(符号化されていません)。実際には、RFC1939によれば、MD5アルゴリズムを使用してパスワードを暗号化するため、安全な認証の恩恵を受けることが可能です。しかし、このコマンドはオプションであり、いくつかのサーバーは、他のPOP3プロトコルを実装して同じメールボックス内の両方のユーザーによる同時協議が不可能であることを意味し、相談の際にメールボックスをロックします。

それはTelnetを使用して電子メールを送信することが可能であるのと同じように、POPサーバ(デフォルトでは110)のポートに簡単なTelnetを使用して、彼の受信メールにアクセスすることも可能です。
telnet mail.commentcamarche.net 110(上記に示したサーバが故意に存在しない、あなたは交換してくださいすることができます commentcamarche.net )インターネットプロバイダのドメインによる
S:+ OK POP3サービスmail.commentcamarche.net
S:(Netscapeのメッセージングサーバー4.15パッチ6(2001年3月31日を建て))
C:USERジェフ
S:+ OK名は有効なメールボックスであります
C:PASS mon_pass
S:+ OK郵便受けの準備
C:STAT
S:+ OK 2 0
C:TOP 1 5
S:件名:こんにちはリトル
S:こんにちはMeandus、
S:お元気ですか?
S:
S:すぐにお会いしましょう!
C:QUIT
S:+ OK


あなたが入力したデータの表示は、使用するTelnetクライアントに依存します。 Telnetクライアントによっては、有効にする必要があります ローカルエコー.

IMAP


プロトコル IMAPインターネットメッセージアクセスプロトコル)POP3に代わるプロトコルですが、多くのより多くの可能性を提供します:

  • IMAPは、複数の同時アクセスを可能に
  • IMAPを使用すると、複数のメールボックスを管理することができます
  • IMAPは、ほとんどの基準でメールすることができます

詳しい情報


SMTPの詳細については、RFC 821の詳細プロトコルで説明を参照するのが最適です。

  • RFC 821をフランス語に翻訳します
  • オリジナルのRFC 821

参照してください。


この記事(PDF)をダウンロード
この記事をダウンロードする(PDF