1、实验目的
理解电子邮件系统基本结构。
理解客户端和服务器端,以及服务器之间的通信。
分析理解SMTP,POP3协议。
2、实验环境
硬件要求:阿里云云主机ECS 一台。
软件要求:Linux/ Windows 操作系统
3、实验内容
3.1 使用邮件代理收发邮件
配置邮件用户代理(例如windows Outlook Express,linux 雷鸟软件等;可以使用系统自带,也可以自行下载。),实现本地撰写,收取自己的QQ邮件。
3.2 本地收发邮件
利用本地客户端撰写和发送QQ电子邮件。同时利用Wireshark抓包分析其通信过程和通信协议。
3.3 web邮件
利用浏览器登录QQ邮箱,撰写和发送QQ电子邮件。同时利用Wireshark抓包分析其通信过程和通信协议。
3.4 telnet收发邮件
利用telnet命令登陆qq邮件服务器,发送电子邮件。同时利用Wireshark抓包分析其通信过程和通信协议。
具体操作命令和端口查询自行网络资料解决。
4、实验结果与分析
需给出实验中相关命令、脚本或者代码以及运行截图。注意格式规范、截图清晰,大小合适;
对于中间过程和运行结果需给出必要分析说明;
4.1使用邮件代理收发邮件
下载Thunderbird,添加邮箱账户
设置服务器
撰写邮件发送
接收到邮件
4.2本地收发邮件
客户绑定邮箱,开启POP/SMTP服务
下载Foxmail
登录QQ邮箱账号完成绑定
关闭SSL
编辑邮件
打开wireshark对当前WLAN进行抓包
过滤出SMTP
对任意一个SMTP进行追踪
分析大致过程
4.3 web邮件
登录QQ邮箱,撰写和发送电子邮件
接受到电子邮件
使用wireshark进行抓包分析,过滤出SSL
Client Hello。TLS握手过程的第一步就是客户端发起请求,主要包括了客户端生成的随机字符串(session key),还包含了客户端所支持所支持的加密套件列表、随机数等信息。
Server Hello。服务器收到客户端的Client Hello数据包之后,根据客户端发来的加密套件列表,选择一个加密套件,也生成一个随机字符串返回给客户端。密钥交换算法选择的是使用ECDHE_RSA,对称加密算法使用AES_128_GCM_SHA256:
Certificate,Server Key Exchange,Server Hello Done,服务器把certificate发给客户端。
服务器返回Server Key Exchange数据包,用于和客户端交换用于数据加密的密钥,Server Hello Done用于通知客户端已经发送用于密钥交换的数据等待客户端响应。
Client Key Change,Change Cipher Spec,Encrypted HandShake Message,客户端根据服务器返回的DH数据生成DH数据发给服务器,用来生成最终的pre-master-secret
Application Data
New Session Tocket,Change Cipher Spec,Encrypted HandShark Message,每隔一段时间就要更新一次会话密钥
4.4 telnet收发邮件
开启Telnet服务
打开cmd输入telnet smtp.qq.com 25连接服务器,连接成功返回220
向服务器表明身份
输入auth login进行登录,注意此时需要输入的是自己邮箱以及密码的base-64编码格式
登录成功
输入mail from:<邮箱>
Rcpt to:<邮箱>
输入data进行正文编辑;输入 from:名字 回车;输入 to:名字 回车;输入 subject:主题 回车,邮件主题
输入主题后空一行编辑正文,正文编辑完毕后以.结束,完成发送
输入quit退出连接