当前位置:文档之家› 实验十一SMTP与POP协议分析

实验十一SMTP与POP协议分析

实验十一 SMTP和POP一实验目的1、理解 SMTP,POP 协议的基本原理;2、理解 SMTP,POP 协议的工作过程;3、了解 SMTP,POP 的基本命令格式;4、了解应用层协议与传输层协议的关系。

二实验内容1、学习邮件服务的工作原理;2、理解 SMTP 协议和 POP3 协议;3、学习 POP3 协议的命令格式和使用方法;4、学习 SMTP 协议的命令和使用方法;5、学习 Foxmail 的使用方法。

三实验环境局域网环境,1 台 PC 机,每台 PC 上都安装有Foxmail软件,学生可以进行账号的配置并利用其进行收发邮件的的操作。

(由于实验室的操作系统为win7,不自带outlook express,所以在此处用Foxmail客户端来代替 outlook express)。

四实验流程五实验原理SMTP 是一种提供可靠且有效电子邮件传输的协议。

SMTP 是建模在 FTP 文件传输服务上的一种邮件服务,主要用于传输系统之间的邮件信息并提供来信有关的通知。

默认端口是25,SMTP主要负责邮件的转发。

POP 适用于 C/S 结构的脱机模型的电子邮件协议,目前已发展到第三版,称 POP3。

脱机模型即不能在线操作,不像 IMAP4(netscape支持 IMAP4)。

默认端口是110,邮件客户端使用pop3协议连接邮件服务器收邮件。

SMTP 协议帮助每台计算机在发送或中转信件时找到下一个目的地,POP3允许客户端从服务器上接受下载邮件,同时根据客户端的操作删除或者保存在邮件服务器上的邮件。

1、 POP3(邮局协议 3)POP 是一个脱机协议,它是一个只有存储转发功能的中间服务器。

POP3 是邮局协议的第 3 个版本。

POP 协议采用客户/服务器工作模式2、 SMTP(简单的邮件传送协议)SMTP 协议是两个报文传输代理之间的通信协议。

它规定了两个相互通信 MTA 之间如何交换信息。

SMTP 协议的最大特点是简单,它规定了发送程序和接收程序之间的命令和应答格式。

命令描述USER<用户邮件地址>用来区分用户正在连接的邮箱PASS<口令>此命令将邮箱的口令发送给 POP3 服务器,缺省情况用明码文本发送。

STAT 请求服务器发问关于邮箱的统计资料,如邮件总数和总字节数LIST<邮件编号> 访问邮件数量和每个邮件的大小RETR<邮件编号>访问由参数标识的邮件标记为删除,由 quit 命令执行 RSET 服务器将重置所有标记为删除的邮件,用于撤销 DELE 命令NOOP 服务器访问一个肯定的响应QUIT更新命令描述 HELLO<domain><CRLF> 发送一个 SMTP 的 HELLO 命令,开始会话。

注:<CRLF>为回车,换行六 实验步骤步骤一:分析 foxmail 收发电子邮件数据包1、 打开邮件工具 : foxmail ,按照已经申请的邮箱信息进行配置,例如邮箱为2008.test.star@ ,密码为:Test2008,同样选择服务器为pop3服务器:,SMTP 服务器: 。

2、 在主机上打开协议分析仪,点击工具栏上的“过滤器”,“类型过滤器”的下拉列表中选择“SMTP 协议”,如图所示。

MAIL FROM:<发送者邮件地址><CRLF> 此命令开始一个邮件传输处理。

RCPT TO:<接受者邮件地址><CRLF>标识邮件接收者的地址。

DATA<CRLF> 接收 SMTP 将 DATA 命令后面的数据看作邮件内容处理,以<CRLF>,<CRLF>标识数据的结尾REST<CRLF> 退出/复位当前的邮件传输。

NOOP<CRLF> 要求接收 SMTP 仅做 OK 应答,(用于测试) QUIT<CRLF> 要求接收 SMTP 返回一个 OK 应答并关闭传输HELP<CRLF>查询服务器支持什么命令应答码 描述 应答描述 501 参数格式错误 251 用户非本地,将转发向<forward-path> 502 命令不可实现 450 要求的邮件操作未完成,邮箱不可用 503 错误的命令序列 550 要求的邮件操作未完成,邮箱不可用 504 命令参数不可实现 451 放弃要求的操作:处理过程中出错 211 系统状态或系统帮助响应 551 用户非本地,请尝试<forward-path> 214 帮助信息 452 系统存储不足,要求的操作未执行 220 <domain>服务就绪 552 过量的存储分配,要求的操作未执行 221 <domain>服务关闭 553 邮箱名不可用,要求的操作未执行 421 <domain>服务未就绪 354 开始邮件输入,以‖.‖结束250要求的邮件操作完成554操作失败3、在 Foxmail中创建一封邮件,发送出去。

4、进行数据捕获,并分析数据包内容,可以看到 SMTP 的命令和参数:图中可以看到MAIL FROM 命令,并可看到邮箱地址2008.test.star@;而在图中,则可以看到这是一个携带邮件内容的 DATA 报文。

5、分析其中发送邮件的过程传输层采用什么协议?发送端的目的端口号是多少?代表什么协议?6、在主机上打开协议分析仪,点击工具栏上的“过滤器”,在“端口过滤器”的“端口值”中选择“发送/接收”的端口为 110,如图所示。

7、在 Foxmail 中创建一封邮件,发送出去,再使用 Foxmail 工具进行接收;8、进行数据捕获,并分析数据包内容,可以看到 POP3 协议的命令和参数,如图所示,就是 POP3 协议使用 USER 命令和 PASS 命令在传输邮件的帐号和密码。

9、分析其中接收邮件的过程传输层采用什么协议?使用的端口号是多少,代表什么协议?步骤二:利用“TCP 工具”收发邮件本步骤的目的是学习 SMTP 协议的命令用法,以及一个邮件发送的过程。

1、首先要与某个邮件服务器建立一个 TCP 连接,例如:使用步骤一中的 的邮件服务器,可从刚才捕获到的报文中看到其 IP 地址为:202.208.5.81,用户名:2008.test.star,密码为:Test2008,邮件服务器域名:。

1) 首先打开协议分析仪,准备好进行数据包的捕获,然后打开协议分析仪,点击工具栏中的“TCP”按钮;2) 在弹出的“TCP 连接工具”中填写邮件服务器的 IP 地址(202.208.5.81)及邮件服务器 SMT协议的端口号(25),点击―启动‖,从而建立本机与邮件服务器 SMTP 端口的 TCP 连接,如图所示。

3)从协议分析器一端可以捕获到三次握手的过程,如图所示。

4)若连接成功,在接收窗口会显示成功连接的信息: 220 Anti-spa m GT for Coremail System (163com[071018]) 若不成功,查看 IP 地址和端口号是否有错,再次尝试进行连接,直到成功。

2、用 SMTP 命令编辑发送邮件,捕获数据包并进行分析:1) 在发送的编辑栏里面编辑发送 SMTP 协议的命令 HELO,参数为发送方的主机名,例如HELO STAR,如图所示;2)发送命令 AUTH LOGIN,此命令的含义是要求进行身份认证;3)邮件服务器返回“334 dXNlcm5hbWU6”,要求主机发送用户名,“dXNlcm5hbWU6”是“username:”的 BASE64 编码;4)发送“MjAwOC50ZXN0LnN0YXI=”,这是“2008.test.star”的 BASE64 编码(可以使用 BASE64转换工具将字符转换为 BASE64 编码);5)邮件服务器返回“ 334 UGFzc3dvcmQ6”,要求主机发送密码,“UGFzc3dvcmQ6”是“Password:”的 BASE64 编码;6)发送“VGVzdDIwMDg=”,这是“Test2008”的 BASE64 编码;7)邮件服务器返回“235 Authenti cation successful”,表示身份认证通过;8)发送“MAIL FROM 2008.test.star@”,说明邮件接收方是 2008.test.star@ ,邮件服务器返回“250 Mail OK”;9)发送“RCPT TO 2008.test.star@”,说明邮件发送方是 2008.test.star@ (这是一封自己发送给自己的邮件),邮件服务器返回“250 Mail OK”;10)发送命令“DATA”,说明下面将开始发送的是邮件正文的内容;11)服务器返回“354 End data with <CR><LF>.<CR><LF> ”,说明服务器准备接收邮件正文,并要求正文内容以单独的一个“.”结束;12)发送字符“my email.”;13)发送字符“.”;14)服务器返回“250 Mail OK queued as smtp1 ,C9GowLDLOx2P_9FIJx30JQ==.36538S2 1221722068”,说明邮件正文发送成功;15)发送命令“QUIT”结束这个邮件会话,服务器返回“221 Bye”(从协议分析仪上可以看到四次断开的过程)。

此时,使用 Outlook Express 可以收到这封邮件,不过内容为空,因为发送的内容“my email.”不能解析成包含主题、From、To、Subject、Date 等格式要求的邮件正文。

3、首先用 Foxmail 工具构造一个邮件发送出去,如图所示,然后关闭 Foxmail工具;4、建立与 POP3 服务器的 TCP 连接,继续使用 的POP3 服务器,可从刚才捕获到的报文中看到其IP 地址为:202.208.5.100,用户名:2008.test.star,密码为:Test2008,邮件服务器域名:1) 首先打开协议分析仪,准备好进行数据包的捕获,然后点击工具栏中的“TCP”按钮;2) 在弹出的“TCP 连接工具”中填写服务器的 IP 地址(202.208.5.100)及服务器 POP3 协议的端口号(110),点击“启动”,从而建立本机与 POP3 服务器的 TCP 连接,如图所示3)若连接成功,在接收窗口会显示成功连接的信息(+OK Welcome to coremail Mail Pop3 Server (163coms[3d8c1fa079729fb6acc588e66d30360es]);若不成功,再次尝试进行连接,直到成功。

相关主题