第6章SMTP、POP3协议分析_第1页
第6章SMTP、POP3协议分析_第2页
第6章SMTP、POP3协议分析_第3页
第6章SMTP、POP3协议分析_第4页
第6章SMTP、POP3协议分析_第5页
已阅读5页,还剩53页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 第第 6 6 章章 SMTPSMTP和和POP3POP3协议分析协议分析授课人:张瑜授课人:张瑜 博士博士Email:QQ:344248003 提纲提纲1. 1. 概述概述2. 2. 简单邮件传输协议(简单邮件传输协议(SMTPSMTP)3. 3. 邮件获取协议邮件获取协议4. 4. 通用因特网邮件扩充(通用因特网邮件扩充(MIMEMIME) 1.1.概述概述通常,电子邮件的发送需要经过通常,电子邮件的发送需要经过用户代理、客户邮用户代理、客户邮件服务器件服务器和和服务器端邮件服务器服务器端邮件服务器等三个环节,并使等三个环节,并使用邮件传输和获取协议用邮件传输和获取协议(如如SMTP和和P

2、OP3,或或IMAP)。电子邮件的工作过程:电子邮件的工作过程: 客客户户端端 服服务务器器端端 用用户户代代理理 邮邮件件服服务务器器 邮邮件件服服务务器器 用用户户代代理理 S MTP S MTP PO P3/IM AP 协协 议议 图图 1 14 4- -1 1 电电子子邮邮 件件的的工工作作过过程程 1.1.概述概述1. 1用户代理用户代理用户代理用户代理UA(User Agent)是是用户与电子邮件系用户与电子邮件系统的接口统的接口,它是一个在用户,它是一个在用户PC机中运行的程机中运行的程序。序。用户代理接受用户输入的各种指令,将用户用户代理接受用户输入的各种指令,将用户的邮件传送

3、至其邮件服务器或者通过的邮件传送至其邮件服务器或者通过POP、IMAP将信件从其邮件服务器获取到本机上。将信件从其邮件服务器获取到本机上。1.1.概述概述1. 1用户代理用户代理l用户代码程序有:用户代码程序有:foxmail,outlook express等等l用户代理至少应当具有以下三个功能:用户代理至少应当具有以下三个功能:l1) 撰写撰写l2) 显示显示l3) 处理处理1.1.概述概述1.2邮件服务器邮件服务器邮件服务器是电子邮件系统的核心构件,因邮件服务器是电子邮件系统的核心构件,因特网上所有的特网上所有的ISP都有邮件服务器。都有邮件服务器。邮件服务器的邮件服务器的功能功能是是发送

4、和接收发送和接收邮件,同时邮件,同时还要向发信人报告邮件传送的情况还要向发信人报告邮件传送的情况(已交付、已交付、被拒绝、丢失等被拒绝、丢失等)。邮件服务器默认监听邮件服务器默认监听25号端口号端口接受请求。接受请求。1.1.概述概述1.3协议协议lSMTPlPOP3lIMAP 1.1.概述概述1.3协议协议简单邮件传送协议简单邮件传送协议SMTPSMTP(Simple Mail Transfer (Simple Mail Transfer Protocol)Protocol)和电子邮件报文格式和电子邮件报文格式MAILMAIL最早出现在最早出现在19821982年,是年,是ARPANETAR

5、PANET上的电子邮件标准,现在它上的电子邮件标准,现在它们都已成为因特网的正式标准们都已成为因特网的正式标准, ,即即X.400X.400电子邮件标电子邮件标准。准。19931993年,制订了新的标准年,制订了新的标准MIMEMIME(多用途因特网邮(多用途因特网邮件扩充件扩充Multipurpose Internet Mail ExtensionsMultipurpose Internet Mail Extensions),),MIMEMIME主要用于编码,在其邮件首部中说明了邮件主要用于编码,在其邮件首部中说明了邮件的数据类型,的数据类型,MIMEMIME邮件课同时传送多种类型的数邮件课

6、同时传送多种类型的数据。据。1.1.概述概述1.3协议协议POP3POP3(Post Office protocolPost Office protocol)邮局协议)邮局协议用于从邮件用于从邮件服务器接受邮件服务器接受邮件IMAPIMAP(Internet Massage Access ProtocolInternet Massage Access Protocol)因特)因特网报文访问协议网报文访问协议提供了在远程服务器上管理邮件的提供了在远程服务器上管理邮件的手段手段1.1.概述概述1.4 电子邮件格式电子邮件格式l内容内容:首部:首部+信体信体(body) l首部首部:发送方、接收方、

7、发送日期和内容格式等。:发送方、接收方、发送日期和内容格式等。l信体信体:可以包含任意文本。:可以包含任意文本。lRFC 822规定了邮件内容中的首部格式,邮件的信规定了邮件内容中的首部格式,邮件的信体部分由用户撰写。用户写好首部后,邮件系统将自体部分由用户撰写。用户写好首部后,邮件系统将自动地将动地将信封信封所需的信息提取出来并写在信封上,用户所需的信息提取出来并写在信封上,用户不需要填写电子邮件信封上的信息。不需要填写电子邮件信封上的信息。l首部由多行构成,首部由多行构成,首部行首部行:关键字:关键字+冒号冒号+信息信息1.1.概述概述电子邮件格式电子邮件信息的实例电子邮件信息的实例 F

8、Fr ro om m: : J Jo oh hn n_ _O O_ _P Pu ub bl li ic c f fo oo ob ba ar r. .c co om m T To o: : 9 91 12 27 74 43 3. .2 25 53 38 84 43 3 n no on ne ex xi is st t. .c co om m D Da at te e: : F Fr ri i, , 1 1 J Ja an n 9 99 9 1 10 0: :2 21 1: :3 32 2 E ES ST T S Su ub bj je ec ct t: : l lu un nc ch h w

9、wi it th h m me e? ? B Bo ob b, , C Ca an n w we e g ge et t t to og ge et th he er r f fo or r l lu un nc ch h w wh he en n y yo ou u v vi is si it t n ne ex xt t w we ee ek k? ? I Im m f fr re ee e o on n T Tu ue es sd da ay y o or r W We ed dn ne es sd da ay y j ju us st t l le et t m me e k kn n

10、o ow w w wh hi ic ch h d da ay y y yo ou u w wo ou ul ld d p pr re ef fe er r. . J Jo oh hn n 首部中的关键字FromToDateSubject因特网电子邮件中的普通关键字及含义:因特网电子邮件中的普通关键字及含义:关关键键字字 含含义义 关关键键字字 含含义义 F Fr ro om m 发发送送方方地地址址 R Re ep pl ly y- -T To o 回回复复地地址址 T To o 接接收收方方地地址址 X X- -C Ch ha ar rs se et t 使使用用的的字字符符集集 C Cc

11、c 复复制制副副本本地地 X X- -M Ma ai il le er r 工工具具软软件件 D Da at te e 发发送送日日期期 X X- -S Se en nd de er r 发发送送方方地地址址的的副副本本 S Su ub bj je ec ct t 主主题题 X X- -F Fa ac ce e 发发送送方方面面部部图图象象 表表 1 14 4- -3 3 常常见见关关键键字字及及其其含含义义 1.1.概述概述 提纲提纲1. 1. 概述概述2. 2. 简单邮件传输协议(简单邮件传输协议(SMTPSMTP)3. 3. 邮件获取协议邮件获取协议4. 4. 通用因特网邮件扩充(通用因

12、特网邮件扩充(MIMEMIME) 2.1概述概述SMTP是一种提供可靠且有效电子邮件传输的协议。SMTP 是建立在 FTP 文件传输服务上的一种邮件服务,主要用于传输系统之间的邮件信息并提供来信有关的通知。简单邮件传输协议(SMTP)的目标是可靠高效地传送邮件,使用端口25,传输协议TCP。2. 简单邮件传输协议(简单邮件传输协议(SMTP)2.1概述概述SMTP命令定义了邮件传输或由用户定义的系统功能,规定了14条命令和21种响应信息。命令由4个字母组成,以nr结束;响应信息一般只有一行信息:3位数字代码位数字代码+简单的简单的文字说明文字说明 报文传送代理报文传送代理报文传送代理报文传送代

13、理2. 简单邮件传输协议(简单邮件传输协议(SMTP)2. 简单邮件传输协议(简单邮件传输协议(SMTP)2.2 SMTP的最小命令集及其功能的最小命令集及其功能 命命令令 含含义义 H HE EL LO O 发发送送 S SM MT TP P 向向接接受受 S SM MT TP P 所所做做的的提提示示 M MA AI IL L 启启动动邮邮递递(m ma ai il l)处处理理 R RE EC CP P 识识别别邮邮件件接接收收者者 D DA AT TA A D DA AT TA A 后后面面内内容容表表示示邮邮件件数数据据, 以以 结结尾尾 R RE ES ST T 退退出出(或或复复

14、位位)当当前前的的邮邮递递处处理理,返返回回 O OK K 应应答答表表示示过过程程有有效效 N NO OO OP P 用用于于用用户户测测试试,仅仅返返回回 O OK K Q QU UI IT T 接接收收端端返返回回 O OK K 应应答答并并关关闭闭传传输输连连接接 2. 简单邮件传输协议(简单邮件传输协议(SMTP)2.3 SMTP命令和响应2. 简单邮件传输协议(简单邮件传输协议(SMTP)2.4 SMTP的应答码及其含义的应答码及其含义 应应答答码码 含含义义 应应答答码码 含含义义 2 21 11 1 系系统统状状态态或或帮帮助助应应答答 5 50 00 0 语语法法错错误误,不

15、不能能识识别别命命令令 2 21 14 4 帮帮助助报报文文 5 50 01 1 参参量量有有语语法法错错误误 2 22 20 0 服服务务准准备备好好 5 50 02 2 命命令令失失败败 2 22 21 1 服服务务关关闭闭传传输输连连接接 5 50 03 3 命命令令中中有有坏坏串串 2 25 50 0 请请求求邮邮递递活活动动已已完完成成 5 50 04 4 命命令令参参量量没没有有实实现现 2 25 51 1 用用户户不不在在本本地地;寻寻 5 55 50 0 请请求求活活动动失失败败;邮邮箱箱不不能能得得到到 3 35 54 4 邮邮件件输输入入,以以 结结束束 5 55 51 1

16、 用用户户不不在在本本地地,请请试试 4 42 21 1 服服务务失失败败,关关闭闭传传输输连连接接 5 55 52 2 请请求求邮邮递递活活动动失失败败 4 45 50 0 请请求求邮邮递递活活动动失失败败;邮邮箱箱失失败败 5 55 53 3 请请求求活活动动失失败败;邮邮箱箱名名没没激激活活 4 45 51 1 请请求求失失败败;本本地地错错误误 5 55 54 4 处处理理失失败败 表表 1 14 4- -5 5 S SM MT TP P 的的应应答答码码及及其其含含义义 2. 简单邮件传输协议(简单邮件传输协议(SMTP)SMTP命令和响应2. 简单邮件传输协议(简单邮件传输协议(S

17、MTP)SMTP命令和响应2. 简单邮件传输协议(简单邮件传输协议(SMTP)2.5 SMTP模型模型 当用户发出邮件请求时,当用户发出邮件请求时,SMTP发送者发送者建立与建立与SMTP接收者接收者之间的一个双向传送通信通道。之间的一个双向传送通信通道。SMTP命令由命令由SMTP发送者发出,由发送者发出,由SMTP接收者接收者接收,而应答则反方面传送。接收,而应答则反方面传送。 用用户户 文文件件系系统统 发发送送 SMTP 接接收收 SMTP SMTP协协议议 发发送送 SMTP 接接收收 SMTP 图图 1 14 4- -3 3 S SM MT TP P 模模型型 文文件件系系统统 2

18、. 简单邮件传输协议(简单邮件传输协议(SMTP)2.6 SMTP通信通信lSMTP通信过程中的通信过程中的连接建立、邮件传送、连接释放连接建立、邮件传送、连接释放三个三个阶段。阶段。 (1) 连接建立连接建立SMTP连接是在发送主机即客户服务器的连接是在发送主机即客户服务器的SMTP客户和接客户和接收主机的收主机的SMTP服务器之间建立的。服务器之间建立的。SMTP客户每隔一定时间对邮件缓存扫描一次。如发现有客户每隔一定时间对邮件缓存扫描一次。如发现有邮件,就使用邮件,就使用SMTP的的熟知端口号熟知端口号25与目的主机的与目的主机的SMTP服务器服务器建立建立TCP连接连接。2. 简单邮件

19、传输协议(简单邮件传输协议(SMTP)2.6 SMTP通信通信l不管发送端和接收端的邮件服务器相隔有多远,不管在邮件的传送过程中要经过多少个路由器,TCPTCP连接总是在发连接总是在发送端和接收端这两个邮件服务器之间直接建立送端和接收端这两个邮件服务器之间直接建立,而不会使用中间的邮件服务器。2. 简单邮件传输协议(简单邮件传输协议(SMTP)2. 简单邮件传输协议(简单邮件传输协议(SMTP)连接建立后,连接建立后,SMTP服务器发出服务器发出“220 Service ready”。然后,然后,SMTP客户向客户向SMTP服务器发送服务器发送HELO命令命令,附上,附上发送方的主机名。发送方

20、的主机名。SMTP服务器若有能力接收邮件,则回答:服务器若有能力接收邮件,则回答:“250 OK”,表示已准备好接收。若表示已准备好接收。若SMTP服务器不可用,则回答服务器不可用,则回答“421 Service not available”。如在一定时间内发送不了邮件,则将邮件退还发信人。如在一定时间内发送不了邮件,则将邮件退还发信人。 2. 简单邮件传输协议(简单邮件传输协议(SMTP)2邮件传送邮件传送SMTP客户服务器获得接收服务器的肯定回复后,发出客户服务器获得接收服务器的肯定回复后,发出MAIL命令。命令。MAIL命令命令后面有发信人的地址。如:后面有发信人的地址。如: MAIL

21、FROM: 若若SMTP服务器已准备好接收邮件,则回答服务器已准备好接收邮件,则回答“250 OK”。否则,返回一个代码,指出原因。如:否则,返回一个代码,指出原因。如:451(处理时出错处理时出错),452(存储空间不够存储空间不够),500(命令无法识别命令无法识别)等。等。2. 简单邮件传输协议(简单邮件传输协议(SMTP)2. 简单邮件传输协议(简单邮件传输协议(SMTP)3连接释放连接释放SMTP客户应发生客户应发生QUIT命令命令,表示客户邮件发生完毕。,表示客户邮件发生完毕。SMTP服务器返回的信息是服务器返回的信息是“250 请求邮递已完成请求邮递已完成”。SMTP再发出释放再

22、发出释放TCP连接的命令,待连接的命令,待SMTP服务器应答服务器应答后,全部过程结束,释放后,全部过程结束,释放SMTP连接。连接。2. 简单邮件传输协议(简单邮件传输协议(SMTP)2. 简单邮件传输协议(简单邮件传输协议(SMTP)$ telnet 25Trying 00.Connected to (00).= Connection Establishment =220 SMTP server ready Fri, 6 Aug 2004 . . .HELO 250 = Envelope =MAIL FROM: 250 Sender OkRCPT

23、 TO: 250 Recipient Ok= Header and Body =DATA354 Ok Send data ending with .From: ForouzanTO: ForouzanThis is a test messageto show SMTP in action.= Connection Termination=250 Message received: QUIT221 SMTP server closing connectionConnection closed by foreign host. 提纲提纲1. 1. 概述概述2. 2. 简单邮件传输协议(简单邮件传输

24、协议(SMTPSMTP)3. 3. 邮件获取协议邮件获取协议4. 4. 通用因特网邮件扩充(通用因特网邮件扩充(MIMEMIME) 3. POP33. POP3协议协议3.1 POP3命令及应答。命令及应答。POP3使用使用客户客户/服务器服务器工作方式工作方式。在接收邮件的用户的在接收邮件的用户的PC机中必须运行机中必须运行POP客户程序,而在客户程序,而在其其ISP的邮件服务器中则运行的邮件服务器中则运行POP服务器程序。服务器程序。3. POP33. POP3协议协议3.1 POP3命令及应答。命令及应答。POP3命令命令由一个命令和一些参数组成。由一个命令和一些参数组成。所有命令以所有

25、命令以一个一个CRLF对结束对结束。命令命令和参数由可打印的和参数由可打印的ASCII字符组成,它们之间字符组成,它们之间由空格间隔由空格间隔。命令命令一般是三到四个字母,每个参数却可达一般是三到四个字母,每个参数却可达40个字个字符长。符长。 COMMAND Parameter 3. POP33. POP3协议协议3.1 POP3命令及应答。命令及应答。POP3响应响应由一个由一个状态码状态码和一个可能跟有和一个可能跟有附加信息附加信息的命令组成。的命令组成。所有响应也是由所有响应也是由CRLF对结束。对结束。对于特定命令的响应是由许多字符组成的。对于特定命令的响应是由许多字符组成的。 响应

26、第一行以+OK 或 ERR开头,再加ASCII文本 3. POP33. POP3协议协议POP3最小命令集最小命令集命命令令 含含义义 命命令令 含含义义 U US SE ER R 用用户户标标识识 R RE ET TR R 从从邮邮箱箱取取出出报报文文 P PA AS SS S 用用户户/ /服服务务器器口口令令 D DE EL LE E 删删除除报报文文标标记记 Q QU UI IT T 关关闭闭 T TC CP P 连连接接 N NO OO OP P 服服务务器器返返回回一一个个空空响响应应 S ST TA AT T 服服务务器器返返回回邮邮箱箱的的报报文文数数和和报报文文大大小小 L

27、LA AS ST T 服服务务器器返返回回访访问问的的最最大大报报文文数数 L LI IS ST T 返返回回报报文文标标识识和和大大小小 R RS SE ET T 去去除除待待删删除除报报文文的的标标记记 表表 1 14 4- -6 6 P PO OP P3 3 最最小小命命令令集集 3. POP33. POP3协议协议3.2工作模式工作模式POP3有两种工作模式:有两种工作模式:删除模式和保持模式删除模式和保持模式。删除模式删除模式表示一旦邮件交付给用户的表示一旦邮件交付给用户的PC机,机,POP服务器就服务器就不再保存这些邮件。不再保存这些邮件。保持模式保持模式指在收信人读取邮件后,此邮

28、件仍保留在指在收信人读取邮件后,此邮件仍保留在POP服服务器上。务器上。l 用户在取回邮件并中断与用户在取回邮件并中断与POP服务器的连接后,可在自己服务器的连接后,可在自己的的PC机上慢慢处理收到的邮件。因此机上慢慢处理收到的邮件。因此POP实际上是一个实际上是一个脱脱机协议机协议。3. POP33. POP3协议协议3.3 基本操作基本操作服务器侦听服务器侦听TCP端口端口110。POP3客户和服务器建立客户和服务器建立TCP连接后,会话进入连接后,会话进入鉴别状态鉴别状态,在此状态中,客户必须通过在此状态中,客户必须通过POP3服务器的鉴别。若鉴别服务器的鉴别。若鉴别成功,则服务器就打开

29、客户的邮箱,进入处理状态。成功,则服务器就打开客户的邮箱,进入处理状态。在在处理状态处理状态中,客户请求服务器提供信息中,客户请求服务器提供信息(如邮件列表如邮件列表)或或完成动作完成动作(如取走指定的邮件报文如取走指定的邮件报文)等服务。等服务。最后,当客户发出最后,当客户发出QUIT命令时,会话就进入命令时,会话就进入更新状态更新状态,连接终止。连接终止。3. POP33. POP3协议协议POP3命令及执行过程 假设用C表示客户端(Client),S表示服务器端(Server)。 客户端首先使用TCP与POP3服务器建立连接,连接成功后,服务器发送一个单行的确认信息,然后要求客户端发送用

30、户名和密码进行确认,下面是客户端发送的命令: 发送用户名。 格式:USER 服务器返回:+OK用户名正确;-ERR用户名错误。 示例:C:USER S:+OK welcome on this server.发送密码用户名确认成功后,客户端再发送密码。 语法形式:PASS 功能:将客户的密码发送给服务器。 服务器返回:+OK 表示密码正确; -ERR 表示密码错误。 示例:C:PASS * S:+OK myname logged in at 19:04服务器对用户名和密码验证成功后,客户端就可以发送POP3命令要求服务器执行相应的操作。对于每个命令,服务器都会返回应答信息。常用命令有:STAT命

31、令 格式:STAT 功能:从服务器中获邮件总数和总字节数。 服务器返回:邮件总数和总字节数。 示例:C:STAT S:+OK 2 320LIST命令 格式:LIST 功能:从服务中获得邮件列表和大小。 服务器返回:列出邮件列表和大小。 示例:C:LIST S:+OK 2 messages (320 octets) S:1 120 S:2 200 S: . 注意,“.”单独占一行。 CR-LF 表示信息传送结束RETR命令 格式:RETR 功能:从服务器中获得一个邮件。 服务器返回:+OK成功;-ERR错误。 示例:C: RETR 1 S:+OK 120 octets S: S: . 注意,“.

32、”单独占一行。DELE命令 语法形式:DELE 功能:服务器将邮件标记为删除,当执行QUIT命令时才真正删除。 服务器返回:+OK成功;-ERR错误。 示例:C:DELE 1 S:+OK 1 DeletedQUIT命令 格式:QUIT 功能:关闭与服务器的连接。 服务器返回:+OK;-ERR。 示例:C:QUIT S:+OK 然后服务器自动断开与该客户端的连接。4.1 IMAP协议协议因特网报文存取协议因特网报文存取协议IMAP是斯坦福大学在是斯坦福大学在1986年开发的。年开发的。IMAP的最新版是的最新版是IMAP第第4版修订版版修订版1(RFC 2060),使用,使用端口端口143。1工

33、作原理工作原理IMAP4的的三种工作模式三种工作模式:离线、在线和断连方式。离线、在线和断连方式。 1)离线工作模式离线工作模式 2)在线工作模式在线工作模式 3)断连工作模式断连工作模式离线方式与离线方式与POP3相同。客户软件相同。客户软件把邮箱存储在本地硬盘上以进行读把邮箱存储在本地硬盘上以进行读取和撰写信息的工作。当需要发送取和撰写信息的工作。当需要发送和接收消息时,用户才连接服务器。和接收消息时,用户才连接服务器。虽然邮箱由客户软件处理,但是虽然邮箱由客户软件处理,但是用户在线访问的邮箱始终存储在用户在线访问的邮箱始终存储在邮件服务器上。在线方式主要是邮件服务器上。在线方式主要是由位

34、置固定的用户使用,一般在由位置固定的用户使用,一般在快速快速LAN连接下进行。连接下进行。4. IMAP4. IMAP协议协议2与与POP3的简单比较的简单比较1)相同之处)相同之处IMAP和和POP都按都按客户客户/服务器方式服务器方式工作。工作。对于对于POP3和和IMAP4协议,进来的邮件都存储在中央的邮协议,进来的邮件都存储在中央的邮件服务器上。用户使用遵循协议的邮件客户软件来连接到件服务器上。用户使用遵循协议的邮件客户软件来连接到邮件服务器上,邮件服务器上,先进行身份验证,鉴定登录名和口令,然先进行身份验证,鉴定登录名和口令,然后用户才获得访问邮箱的权利。后用户才获得访问邮箱的权利。有一些有一些P

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论