2022年邮件基础知识教程++++邮件协议介绍 .pdf
《2022年邮件基础知识教程++++邮件协议介绍 .pdf》由会员分享,可在线阅读,更多相关《2022年邮件基础知识教程++++邮件协议介绍 .pdf(11页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、邮件基础知识教程一、SMTP1、概述SMTP 被用来在因特网上传递电子邮件。文件RFC821 规定了该协议的所有细节。协议的原理很简单。无非是一个客户端计算机向服务器发送命令,然后服务器向客户端计算机返回一些信息。客户端发送的命令以及服务器的回应都是字符串。首先要与邮件服务器连接,服务器将返回文本。该文本包含一个三位数的代码及描述,例如:220-ns.cinfo.ru Sendmail 8.6.12/8.6.9 ready at Wed,22 Apr 1998 22:54:41+0300 220 ESMTP spoken here 这些描述可能会因服务器而异。只须要知道代码所代表的意思就行了。
2、代码220 表示成功建立连接,服务器等待你的第一个命令。向服务器传递的第一个命令是HELO.该命令包含一个参数,即你的邮箱名。HELO oleg 注意:在RFC821 中,HELO 是一个可选择性命令,如果服务器不要求该命令的话,你可以把它忽略掉。如果命令成功,服务器会返回一个代码为250 的回应。下一步用 MAIL FROM命令告诉服务器你想发一封邮件。该命令以发信人的邮件地址为参数。MAIL FROM:发完命令后,如果服务器返回一个代码为250 回应,你就可以向服务器发送RCPT TO 命令了。RCPT TO 命令以收信人地址为参数,是告诉服务器你想将邮件发到收信人地址处。RCPT TO:
3、如果你想将邮件发给多个收件人的话。你需要多次使用RCPT TO 命令,对每个命令,服务器都会返回代码为250 的回应。现在可以向服务器发送邮件正文了。用DATA 命令告诉服务器以下的内容为邮件正文。在你从服务器收到代码为354 的回应后,你就可以发送邮件正文了。邮件按行发送,每行邮件以一个无回车的换行符结束,只须按回车键就行了。下面是一个例子:Subject:My first e-mail message.First line of a message.Second line.注意上面最后一行的最后一个字符是一个小数点。这是正文结束的标志。服务器收到这个标志后,就会立即返回一个代码为250 的
4、回应以及该邮件的唯一ID 号。250 WAA10568 Message accepted for delivery 任务完成了,可以继续发送下封邮件,也可以断开同服务器的连接。如果要断开同服务器的连接就用 QUIT 命令。在这种情况下,服务器会返回一个代码为221 的回应并断开连接。QUIT 221 ns.cinfo.ru closing connection 2、工作机制SMTP 设计基于以下通信模型:针对用户的邮件请求,发送SMTP 建立与接收 SMTP 之间建立一个双向传送通道。接收SMTP 可以是最终接收者也可以是中间传送者。SMTP 命令由发名师资料总结-精品资料欢迎下载-名师精心整
5、理-第 1 页,共 11 页 -送SMTP 发出,由接收 SMTP 接收,而应答则反方面传送。一旦传送通道建立,SMTP 发送者发送 MAIL 命令指明邮件发送者。如果 SMTP 接收者可以接收邮件则返回OK 应答。SMTP 发送者再发出RCPT 命令确认邮件是否能接收到。如果SMTP 接收者接收,则返回OK 应答;如果不能接收到,则发出拒绝接收应答(但不中止整个邮件操作),双方将如此重复多次。当接收者收到全部邮件后会接收到特别的序列,如果接收者成功处理了邮件,则返回OK 应答SMTP 提供传送邮件的机制,如果接收方与发送方连接在同一个传送服务下时,邮件可以直接由发送方主机传送到接收方主机;或
6、者,当两者不在同一个传送服务下时,通过中继 SMTP服务器传送。为了能够对SMTP 服务器提供中继能力,它必须拥有最终目的主机地址和邮箱名称。MAIL 命令参数是回复路径,它指定邮件从何处来;而RCPT命令的参数是转发路径的,它指定邮件向何处去。向前路径是源路径,而回复路径是返回路径(它用于发生错误时返回邮件)。3、基本命令(所有的命令都是四个字母组成)发送邮件操作涉及到不同的数据对象,它们由不同的参数相互连接。回复路径就是MAIL 命令的参数,而转发路径则是RCPT 命令的参数,邮件日期是DATA 命令的参数。这些参数或者数据对象必须跟在命令后。这种模式也就要求有不同的缓冲区来存储这些对象,
7、也就是说,有一个回复路径缓冲区,一个转发路径缓冲区,一个邮件内容缓冲区。特定的命令产生自己的缓冲区,或使一个或多个缓冲的内容被清除(0)HELO(HELLO)HELO SP domain CRLF 通知服务器客户的身份。此命令用于向接收SMTP 确认发送 SMTP。参数域包括发送SMTP 的主机名。接收 SMTP通过连接确认命令来向发送SMTP 确认接收 SMTP。引命令和 OK响应确认发送和接收SMTP进入了初始状态,也就是说,没有操作正在执行,所有状态表和缓冲区已经被子清除。(1)MAIL MAIL FROM:此命令用于开始将邮件发送到一个多个邮箱中。参数域包括回复路径。返回路径中包括了可
8、选的主机和发送者邮箱列表。当有主机列表时,它是一个回复路径源,它说明此邮箱是由在表中的主机一一传递发送(第一个主机是最后一个接收到此邮件的主机)过来的。此表也有作向发送者返回非传递信号的源路径。因为每个传递主机地址都被加在此表起始处,它就必须使用发送 IPCE 而不是接收 IPCE(如果它们不是一个IPCE 的话)清楚的名称。一些出错信息的回复路径可能就是空的。此命令清除回复路径缓冲区,转发路径缓冲区和邮件内容缓冲区,并且将此命令的回复路径信息插入到回复路径缓冲区中。(2)RCPT(recipient)RCPT TO:此命令用于确定邮件内容的唯一接收者;多个接收者将由多个此命令指定。转发路径中
9、包括一个可选的主机和一个必须的目的邮箱。此命令给出向前路径标识接收者,如果命令被接收,接收方返回一个250 OK 应答,并存储向前路径。如果接收者未知,接收方会返回一个550 Failure应答。此过程可能会重复若干次。不仅包括邮件,它是主机和目的邮箱的路由表,在其中的第一个主机就是接收命令的主机。名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 11 页 -(3)DATA DATA 如果命令被接收,接收方返回一个354 Intermediate应答,并认定以下的各行都是信件内容。当信件结尾收到并存储后,接收者发送一个250 OK 应答。因为邮件是在传送通道上发送,因此必须指明邮件
10、内容结尾,以便应答对话可以重新开始。SMTP 通过在最后一行仅发送一个句号来表示邮件内容的结束,在接收方,一个对用户透明的过程将此符号过滤掉,以不影响正常的数据。注意:邮件内容包括如下提示:Date,Subject,To,Cc,From。邮件内容指示符确认邮件操作并告知接收者可以存储和再发送数据了。如果此命令被接收,接收方返回一个250 OK 应答。DATA 命令仅在邮件操作未完成或源无效的情况下失败。(4)RSET RSET 此命令指示当送邮件操作将被放弃。任何保存的发送者,接收者和邮件内容应该被抛弃,所有缓冲区和状态表应该被清除,接收方必须返回OK应答。(5)SEND SENDFROM:r
11、everse-path 此命令用于开始一个发送命令,将邮件发送到一个或多个终端上。参数域包括了一个回复路径,此命令如果成功就将邮件发送到终端上了。回复路径包括一个可选的主机列表和发送者邮箱。当出现主机列表时,表示这是一个传送路径,邮件就是经过这个路径上的每个主机发送到这里的(列表上第一个主机是最后经手的主机)。此表用于返回非传递信号到发送者。因为每个传递主机地址都被加在此表起始处,它就必须使用发送IPCE而不是接收 IPCE(如果它们不是一个IPCE的话)清楚的名称。一些出错信息的回复路径可能就是空的。此命令清除回复路径缓冲区,转发路径缓冲区和邮件内容缓冲区,并且将此命令的回复路径信息插入到回
12、复路径缓冲区中。(6)SOML(send or mail)SOMLFROM:reverse-path 此命令用于开始一个邮件操作将邮件内容传送到一个或多个终端上,或者传送到邮箱中。对于每个接收者,如果接收者终端打开,邮件内容将被传送到接收者的终端上,否则就送到接收者的邮箱中。参数域包括回复路径,如果成功地将信息送到终端或邮箱中此命令成功。回复路径包括一个可选的主机列表和发送者邮箱。当出现主机列表时,表示这是一个传送路径,邮件就是经过这个路径上的每个主机发送到这里的(列表上第一个主机是最后经手的主机)。此命令清除回复路径缓冲区,转发路径缓冲区和邮件内容缓冲区,并且将此命令的回复路径信息插入到回复
13、路径缓冲区中。(7)SAML(send and mail)SAMLFROM:reverse-path 此命令用于开始一个邮件操作将邮件内容传送到一个或多个终端上,并传送到邮箱中。如果接收者终端打开,邮件内容将被传送到接收者的终端上和接收者的邮箱中。参数域包括回复路径,如果成功地将信息送到邮箱中此命令成功。回复路径包括一个可选的主机列表和发送者邮箱。当出现主机列表时,表示这是一个传送路径,邮件就是经过这个路径上的每个主机发送到这里的(列表上第一个主机是最后经手的主机)。此命令清除回复路径缓冲区,转发路径缓冲区和邮件内容缓冲区,并且将此命令的回复名师资料总结-精品资料欢迎下载-名师精心整理-第 3
14、 页,共 11 页 -路径信息插入到回复路径缓冲区中。(8)VRFY(verify vt.证实,查证;证明)VRFY string 此命令要求接收者确认参数是一个用户。如果这是(已经知道的)用户名,返回用户的全名和指定的邮箱。此命令对回复路径缓冲区,转发路径缓冲区和邮件内容缓冲区没有影响。(9)EXPN(expand vt.扩大;使膨胀)EXPN string 此命令要求接收者确认参数指定了一个邮件发送列表,如果是一个邮件发送列表,就返回表中的成员。如果这是(已经知道的)用户名,返回用户的全名和指定的邮箱。此命令对回复路径缓冲区,转发路径缓冲区和邮件内容缓冲区没有影响。(10)NOOP NOO
15、P 此命令不影响任何参数和已经发出的命令。它只是说明没有任何操作而不是说明接收者发送了一个 OK应答。此命令对回复路径缓冲区,转发路径缓冲区和邮件内容缓冲区没有影响。(11)QUIT QUIT 此命令指示接收方必须发送OK 应答然后关闭传送信道。接收方在接到 QUIT 命令并做出响应之前不应该关闭通信信道。发送方在发送QUIT 命令和接收到响应之前也不应该关闭信道。即使出错,也不应该关闭信道。如果连接被提前关闭,接收方应该象接收到RSET命令一样,取消所有等待的操作,但不恢复原先已经做过的操作。而发送方应该象接收到暂时错误(4XX)一样假定命令和操作仍在支持之中。4、SMTP 响应对SMTP
16、命令的响应是多样的,它确定了在邮件传输过程中请求和处理的同步,也保证了发送 SMTP 知道接收 SMTP 的状态。每个命令必须有且只有一个响应。SMTP 响应由三位数字组成,其后跟一些文本。数字帮助决定下一个应该进入的状态,而文本对人是有意义的。三位的响应已经包括了足够的信息,不用再阅读文本,文本可以直接抛弃或者传递给用户。特别的是,文本是与接收和环境相关的,所以每次接收到的文本可能不同。在附录E中可以看到全部的响应码。正规的情况下,响应由下面序列构成:三位的数字,一行文本和一个,或者也可以是一个多行响应。只有 EXPN 和 HELP 命令可以导致多行应答,然而,对所有命令,多行响应都是允许的
17、。三位的应答码每一位都有特定的意义。每一位应答表示是否是成功的,失败的或未完成的。通过这一位,不复杂的SMTP 发送就可以决定下一步的操作,如果发送方希望大概了解究竟出了什么问题,它可以检测第二位,而第三位则保存了最后更完整的信息。也就是说,从第一位到第三位,接收方可以一步比一步精确地确定接收方的状态。(1)对于第一位有五种可能的表示代表不同的意义:1yz 部分完成应答命令被接受,但是要求的操作被中止,原因在应答码中。发送方应该再次发送另一命令指明是否继续操作,或者放弃操作。2yz 全部完成应答要求的操作已经完成,可以开始另一个新的请求。3yz 需要近一步信息的部分完成应答命令被接受,但是要求
18、的操作被中止,需要接收进一步的信息。发送方应该发送另一条命令指明进一步的信息。名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 11 页 -4yz 暂时未完成应答命令未被接受,要求的操作也未执行,但是发生错误的状态是暂时的,可以再一次请求操作。发送者应该返回命令序列的开始命令(如果有的话)。很难解释这个暂时的意义,特别对于两个不同的站点来说。区别应答是属于些类还是下一类的方法是:如果能够不加任何改变地重复的再一次发送命令,就是本类的,如果不是,就是下一类(5yz)的。5yz 永久未完成应答命令未被接受,要求的操作未完成。发送对命令的重复不起作用。即使一些出错条件已经改变,但是用户已
19、经不希望重试,而希望在未来的某个时间再进行操作(2)应答的第二位的意义有以下几类:x0z 语法:此类型的应答是针对以下情况的:语法错误;符合语法但命令不存在功能;未完成或冗余的命令。x1z 信息:此类型的应答是用于请求信息的,如状态或帮助信息。x2z 连接:此类型的应答是关于传输信道的。x3z 未使用。x4z 未使用。x5z 邮件系统:此类型的应答指明接收方邮件系统关于请求传送或其它操作的状态的。(3)第三位给出了更详细的说明。ESMTP ESMTP(Extended SMTP),顾名思义,扩展 SMTP 就是对标准 SMTP 协议进行的扩展。它与 SMTP 服务的区别仅仅是,使用 SMTP
20、发信不需要验证用户帐户,而用 ESMTP 发信时,服务器会要求用户提供用户名和密码以便验证身份。验证之后的邮件发送过程与SMTP 方式没有两样。使用BASE64 加密后的用户名。二、POP3 POP 的全称是 Post Office Protocol,即邮局协议,用于电子邮件的接收,现在常用的是第三版,简称为 POP3。通过 POP 协议,客户机登录到服务器上后,可以对自己的邮件进行删除,或是下载到本地,下载后,电子邮件客户软件就可以在本地对邮件进行修改、删除等。POP 服务器一般使用的是TCP 的 110 号端口,以下对几个常用的POP3 命令作一个简单的介绍:命令参数 状态 描述-USER
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年邮件基础知识教程+邮件协议介绍 2022 邮件 基础知识 教程 协议 介绍
限制150内