205 lines
9.8 KiB
TeX
205 lines
9.8 KiB
TeX
|
\documentclass[../public/实验报告模板]{subfiles}
|
|||
|
|
|||
|
\renewcommand{\mydate}{2023年11月24日}
|
|||
|
\renewcommand{\mylabname}{电子邮件协议(SMTP、POP3和IMAP)}
|
|||
|
\renewcommand{\mychapternum}{14}
|
|||
|
|
|||
|
\begin{document}
|
|||
|
\mytitle
|
|||
|
\begin{enumerate}
|
|||
|
\myitem{实验目的}{
|
|||
|
\item 掌握邮件服务的工作原理
|
|||
|
\item 掌握SMTP、POP3、IMAP的工作过程
|
|||
|
\item 了解SMTP、POP3、IMAP协议的命令和使用方法
|
|||
|
}
|
|||
|
\myitem{实验设备或环境}{
|
|||
|
\item 采用网络拓扑结构一
|
|||
|
}
|
|||
|
\myitem{实验原理}{
|
|||
|
\item 电子邮件简介
|
|||
|
\item 电子邮件传输过程
|
|||
|
\item SMTP协议简介
|
|||
|
\item SMTP会话命令与响应
|
|||
|
\item SMTP运行过程
|
|||
|
\item POP3和IMAP简介
|
|||
|
\item POP3会话命令
|
|||
|
\item POP3运行过程
|
|||
|
\item IMAP会话命令
|
|||
|
\item IMAP运行过程
|
|||
|
\item POP3协议与IMAP协议的区别
|
|||
|
}
|
|||
|
\myitemx[label=练习\arabic*\ ]{实验步骤}{
|
|||
|
\item 使用Live Mail发送电子邮件
|
|||
|
\item 使用Live Mail接收电子邮件
|
|||
|
\item 使用TCP工具和SMTP命令实现邮件发送
|
|||
|
\item 使用TCP工具和POP3命令实现邮件接收
|
|||
|
\item 使用TCP工具和IMAP命令实现邮件接收
|
|||
|
}
|
|||
|
\myitemx[label=练习\arabic*\ , itemsep=1em]{实验结果总结}{
|
|||
|
\item 使用Live Mail发送电子邮件
|
|||
|
|
|||
|
SMTP使用的TCP端口号是25。
|
|||
|
|
|||
|
\begin{figure}[H]
|
|||
|
\includegraphics[width=1\linewidth]{imgs/2024-01-01-10-10-30.png}
|
|||
|
\caption{SMTP应该是能看到用户名和密码的,这里应该是之前登录过了所以没有}
|
|||
|
\end{figure}
|
|||
|
\begin{table}[H]
|
|||
|
\centering
|
|||
|
\caption{实验结果}
|
|||
|
\begin{tabularx}{\linewidth}{c|ccZZ}
|
|||
|
\toprule
|
|||
|
% 为什么这里用b才能有居中的效果呢?难道和tabularx有关?
|
|||
|
\multirow[b]{4}{*}{SMTP连接建立过程} & 源IP & 目的IP & 报文摘要和参数 & 报文作用 \\
|
|||
|
\midrule
|
|||
|
& 172.16.0.253 & 172.16.0.73 & 220服务就绪 & 服务器告诉客户已准备好接收邮件 \\
|
|||
|
& 172.16.0.73 & 172.16.0.253 & HELO cslabc39 & 把客户的域名通知服务器 \\
|
|||
|
& 172.16.0.253 & 172.16.0.73 & 250请求命令完成 & 连接成功 \\
|
|||
|
\toprule
|
|||
|
\multirow[b]{9}{*}{邮件传输过程} & 源IP & 目的IP & 报文摘要和参数 & 报文作用 \\
|
|||
|
\midrule
|
|||
|
& 172.16.0.73 & 172.16.0.253 & MAIL FROM: <group7\_3@JServer.Netlab> & 介绍报文的发送者 \\
|
|||
|
& 172.16.0.253 & 172.16.0.73 & 250请求命令完成 & 请求命令完成 \\
|
|||
|
& 172.16.0.73 & 172.16.0.253 & RCPT TO: <group7\_3@JServer.Netlab> & 告知收件人的邮件地址 \\
|
|||
|
& 172.16.0.253 & 172.16.0.73 & 250 请求命令完成 & 请求命令完成 \\
|
|||
|
& 172.16.0.73 & 172.16.0.253 & DATA & 告知即将开始发送邮件内容 \\
|
|||
|
& 172.16.0.253 & 172.16.0.73 & 354 开始邮件输入 & 准备接收邮件报文 \\
|
|||
|
& 172.16.0.73 & 172.16.0.253 & 发送报文,每行一CRLF(回车换行)结束,整个报文以仅有一个点的行结束 & 发送邮件内容 \\
|
|||
|
& 172.16.0.253 & 172.16.0.73 & 250 OK & 接收邮件内容成功 \\
|
|||
|
\toprule
|
|||
|
\multirow[b]{3}{*}{SMTP连接释放过程} & 源IP & 目的IP & 报文摘要和参数 & 报文作用 \\
|
|||
|
\midrule
|
|||
|
& 172.16.0.73 & 172.16.0.253 & QUIT & 退出 \\
|
|||
|
& 172.16.0.253 & 172.16.0.73 & 221 服务关闭 & 服务关闭 \\
|
|||
|
\bottomrule
|
|||
|
\end{tabularx}
|
|||
|
\end{table}
|
|||
|
\begin{figure}[H]
|
|||
|
\includegraphics[width=1\linewidth]{imgs/2024-01-01-10-52-02.png}
|
|||
|
\caption{MIME信息}
|
|||
|
\end{figure}
|
|||
|
可以观察到MIME信息为:
|
|||
|
MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="---=NextPart\_000\_0097\_01DA1EB0.298B18B0"
|
|||
|
|
|||
|
这说明MIME的版本是1.0,内容有多个部分,并给出了内容的边界模式字符串。
|
|||
|
|
|||
|
\item 使用Live Mail接收电子邮件
|
|||
|
|
|||
|
\begin{enumerate}
|
|||
|
\item 使用POP3协议接受
|
|||
|
POP3使用的TCP端口是110。
|
|||
|
|
|||
|
能看到用户名和密码。
|
|||
|
|
|||
|
\begin{figure}[H]
|
|||
|
\includegraphics[width=1\linewidth]{imgs/2024-01-01-11-06-00.png}
|
|||
|
\caption{用户名的数据包}
|
|||
|
\end{figure}
|
|||
|
\begin{figure}[H]
|
|||
|
\includegraphics[width=1\linewidth]{imgs/2024-01-01-11-06-29.png}
|
|||
|
\caption{密码的数据包}
|
|||
|
\end{figure}
|
|||
|
|
|||
|
POP3在每次收取时都会发送用户名和密码进行验证,而SMTP只需要验证一次。
|
|||
|
|
|||
|
\begin{figure}[H]
|
|||
|
\includegraphics[width=1\linewidth]{imgs/2024-01-01-11-09-26.png}
|
|||
|
\caption{命令RETR的响应报文与发送的内容一致}
|
|||
|
\end{figure}
|
|||
|
|
|||
|
\item 使用IMAP协议接收
|
|||
|
|
|||
|
IMAP使用的TCP端口号是143。
|
|||
|
|
|||
|
能看到用户名和密码。
|
|||
|
|
|||
|
\begin{figure}[H]
|
|||
|
\includegraphics[width=1\linewidth]{imgs/2024-01-01-11-11-41.png}
|
|||
|
\caption{传输用户名和密码的数据包}
|
|||
|
\end{figure}
|
|||
|
|
|||
|
IMAP的功能比POP3多,能直接操作服务器上的邮件而不需要先下载到本地。
|
|||
|
\end{enumerate}
|
|||
|
|
|||
|
\item 使用TCP工具和SMTP命令实现邮件发送
|
|||
|
|
|||
|
\begin{figure}[H]
|
|||
|
\centering
|
|||
|
\includegraphics[width=0.8\linewidth]{imgs/2024-01-01-11-14-37.png}
|
|||
|
\caption{TCP工具发送邮件建立连接}
|
|||
|
\end{figure}
|
|||
|
\begin{figure}[H]
|
|||
|
\centering
|
|||
|
\includegraphics[width=0.8\linewidth]{imgs/2024-01-01-11-15-13.png}
|
|||
|
\caption{TCP工具发送邮件发送内容}
|
|||
|
\end{figure}
|
|||
|
\begin{figure}[H]
|
|||
|
\centering
|
|||
|
\includegraphics[width=0.8\linewidth]{imgs/2024-01-01-11-16-17.png}
|
|||
|
\caption{TCP工具发送邮件断开连接}
|
|||
|
\end{figure}
|
|||
|
\begin{figure}[H]
|
|||
|
\centering
|
|||
|
\includegraphics[width=1\linewidth]{imgs/2024-01-01-11-17-24.png}
|
|||
|
\caption{会话分析的过程与练习一的过程相同}
|
|||
|
\end{figure}
|
|||
|
|
|||
|
在编写邮件内容时,我们只是简单发送“myemail”字符串,能否尝试添加邮件内容首部的一些关键信息,如From、Subject、To等及有关MIME的信息。
|
|||
|
|
|||
|
能。
|
|||
|
|
|||
|
\item 使用TCP工具和POP3命令实现邮件接收
|
|||
|
|
|||
|
\begin{figure}[H]
|
|||
|
\centering
|
|||
|
\includegraphics[width=0.8\linewidth]{imgs/2024-01-01-11-21-10.png}
|
|||
|
\caption{TCP工具接收邮件}
|
|||
|
\end{figure}
|
|||
|
\begin{figure}[H]
|
|||
|
\centering
|
|||
|
\includegraphics[width=0.8\linewidth]{imgs/2024-01-01-11-21-49.png}
|
|||
|
\caption{TCP工具接收邮件}
|
|||
|
\end{figure}
|
|||
|
\begin{figure}[H]
|
|||
|
\centering
|
|||
|
\includegraphics[width=0.8\linewidth]{imgs/2024-01-01-11-22-07.png}
|
|||
|
\caption{TCP工具接收邮件}
|
|||
|
\end{figure}
|
|||
|
\begin{figure}[H]
|
|||
|
\includegraphics[width=1\linewidth]{imgs/2024-01-01-11-22-51.png}
|
|||
|
\caption{会话分析}
|
|||
|
\end{figure}
|
|||
|
|
|||
|
\thinkingquestion{
|
|||
|
\item 电子邮件系统使用TCP协议传送邮件。为什么有时我们会遇到邮件发送失败的情况?为什么有时对方会收不到我们发送的邮件?
|
|||
|
|
|||
|
可能发送时网络信号不好,突然断网了,导致发送失败。有时对方的邮件服务器将邮件错误地归类到了垃圾邮件中,导致对方收不到我们发送的邮件。
|
|||
|
|
|||
|
\item 通过实验说明你的电子邮件在网络上传输是安全的吗?为什么?你认为实现邮件安全传输的最好的办法是什么?
|
|||
|
|
|||
|
如果只是简单使用SMTP或POP3或IMAP,那就是不安全的。要确保安全,最好使用SSL/TLS加密,即在TCP上加一层使用非对称加密的公钥密码体系确保安全的SSL/TLS层。
|
|||
|
}
|
|||
|
|
|||
|
\item 使用TCP工具和IMAP命令实现邮件接收
|
|||
|
|
|||
|
\begin{figure}[H]
|
|||
|
\centering
|
|||
|
\includegraphics[width=0.8\linewidth]{imgs/2024-01-01-11-32-08.png}
|
|||
|
\caption{TCP工具IMAP协议接受邮件}
|
|||
|
\end{figure}
|
|||
|
\begin{figure}[H]
|
|||
|
\centering
|
|||
|
\includegraphics[width=0.8\linewidth]{imgs/2024-01-01-11-32-37.png}
|
|||
|
\caption{TCP工具IMAP协议接受邮件}
|
|||
|
\end{figure}
|
|||
|
\begin{figure}[H]
|
|||
|
\includegraphics[width=1\linewidth]{imgs/2024-01-01-11-33-19.png}
|
|||
|
\caption{TCP工具IMAP协议会话分析}
|
|||
|
\end{figure}
|
|||
|
\begin{figure}[H]
|
|||
|
\includegraphics[width=1\linewidth]{imgs/2024-01-01-11-34-02.png}
|
|||
|
\caption{TCP工具IMAP协议会话分析}
|
|||
|
\end{figure}
|
|||
|
}
|
|||
|
\end{enumerate}
|
|||
|
\end{document}
|