192 lines
8.5 KiB
TeX
192 lines
8.5 KiB
TeX
|
\documentclass[../public/实验报告模板]{subfiles}
|
|||
|
|
|||
|
\renewcommand{\mydate}{2023年12月29日}
|
|||
|
\renewcommand{\mylabname}{远程登录与文件传送协议(TELNET与FTP)}
|
|||
|
\renewcommand{\mychapternum}{13}
|
|||
|
|
|||
|
\begin{document}
|
|||
|
\mytitle
|
|||
|
\begin{enumerate}
|
|||
|
\myitem{实验目的}{
|
|||
|
\item 掌握 TELNET 的工作过程
|
|||
|
\item 理解 TELNET 选项协商
|
|||
|
\item 掌握 FTP 的工作原理
|
|||
|
\item 掌握 FTP 的一些常用命令的使用方法及用途
|
|||
|
}
|
|||
|
\myitem{实验设备或环境}{
|
|||
|
\item 采用网络拓扑结构一
|
|||
|
}
|
|||
|
\myitem{实验原理}{
|
|||
|
\item 分时系统
|
|||
|
\item 本地登录与远程登录
|
|||
|
\item 网络虚拟终端
|
|||
|
\item TELNET简介
|
|||
|
\item NVT字符集
|
|||
|
\item TELNET选项协商
|
|||
|
\item FTP协议简介
|
|||
|
\item FTP连接、通信与传送
|
|||
|
\item FTP命令与响应
|
|||
|
}
|
|||
|
\myitemx[label=练习\arabic*\ ]{实验步骤}{
|
|||
|
\item 运行TELNET命令,捕获数据并分析
|
|||
|
\item TELNET选项协商的过程
|
|||
|
\item FTP的工作过程
|
|||
|
\item 使用TCP连接工具与服务器进行命令交互
|
|||
|
}
|
|||
|
\myitemx[label=练习\arabic*\ , itemsep=1em]{实验结果总结}{
|
|||
|
\item 运行TELNET命令,捕获数据并分析
|
|||
|
|
|||
|
TELNET使用的TCP端口是23。
|
|||
|
|
|||
|
客户端与服务器端进行选项协商的过程在练习2中有体现。
|
|||
|
|
|||
|
\begin{figure}[H]
|
|||
|
\includegraphics[width=1\linewidth]{imgs/2024-01-02-20-02-45.png}
|
|||
|
\caption{可以捕获到用户名和密码}
|
|||
|
\end{figure}
|
|||
|
|
|||
|
TELNET交互图为上图的会话分析的截图。
|
|||
|
|
|||
|
TELNET是明文传输,因此可能存在网络监听,是不安全的。
|
|||
|
|
|||
|
\item TELNET选项协商的过程
|
|||
|
|
|||
|
写出步骤3中每个十六进制字符对应的NVT字符。
|
|||
|
|
|||
|
FFFB18:WILL Terminal\_type, FFFB1F:WILL Negotiateaboutwindowsize \\
|
|||
|
FFFC20:WONT Terminalspeed, FFFC23:WONT Xdisplaylocation, FFFB27:WILL Newenvironment \\
|
|||
|
FFFD03:DO Suppressgo\_ahead \\
|
|||
|
FFFB01:WILL Echo; FFFE05:DONT Status; FFFC21:WONT Remoteflowcontrol \\
|
|||
|
|
|||
|
步骤3中发送的每个数据各自的作用根据上述字符可以知道对应内容,服务器对其应答的内容如下:
|
|||
|
|
|||
|
\begin{figure}[H]
|
|||
|
\includegraphics[width=1\linewidth]{imgs/2024-01-02-20-15-30.png}
|
|||
|
\caption{服务器应答选项协商}
|
|||
|
\end{figure}
|
|||
|
|
|||
|
\thinkingquestion{
|
|||
|
\item 远程登录TELNET的主要特点是什么?什么叫做虚拟终端NVT?
|
|||
|
|
|||
|
主要特点是使用远程主机上的资源;网络虚拟终端NVT是让用户登录远程主机,并操作终端,就像在自己的主机上操作终端一样。
|
|||
|
}
|
|||
|
|
|||
|
\item FTP的工作过程
|
|||
|
|
|||
|
FTP使用的TCP端口有21(命令传输端口),20(主动模式服务器发出连接的端口)、更高的随机端口(被动模式服务端打开的端口,或者客户端发出连接使用的端口)。
|
|||
|
|
|||
|
\begin{figure}[H]
|
|||
|
\includegraphics[width=1\linewidth]{imgs/2024-01-02-20-32-29.png}
|
|||
|
\caption{FTP用户名}
|
|||
|
\end{figure}
|
|||
|
\begin{figure}[H]
|
|||
|
\includegraphics[width=1\linewidth]{imgs/2024-01-02-20-33-27.png}
|
|||
|
\caption{FTP密码}
|
|||
|
\end{figure}
|
|||
|
|
|||
|
可以看到用户名和密码,FTP是不安全的。
|
|||
|
|
|||
|
FTP的工作过程如上图的会话分析所示,控制连接和数据连接根据主动模式和被动模式有不同。
|
|||
|
|
|||
|
\begin{figure}[H]
|
|||
|
\includegraphics[width=1\linewidth]{imgs/2024-01-02-20-36-00.png}
|
|||
|
\caption{数据连接}
|
|||
|
\end{figure}
|
|||
|
|
|||
|
\thinkingquestion{
|
|||
|
\item 文件传送协议FTP的主要工作过程是怎样的?主进程和从属进程各起什么作用?
|
|||
|
|
|||
|
主要工作过程是先由主进程开启控制连接传输命令,然后由从属进程开启数据连接传输文件。
|
|||
|
}
|
|||
|
|
|||
|
\item 使用TCP连接工具与服务器进行命令交互
|
|||
|
|
|||
|
USER group7\_3
|
|||
|
\begin{figure}[H]
|
|||
|
\includegraphics[width=1\linewidth]{imgs/2024-01-02-20-39-58.png}
|
|||
|
\caption{服务器回复的信息}
|
|||
|
\end{figure}
|
|||
|
PASS group7\_3
|
|||
|
\begin{figure}[H]
|
|||
|
\includegraphics[width=1\linewidth]{imgs/2024-01-02-20-40-50.png}
|
|||
|
\caption{服务器回复的信息}
|
|||
|
\end{figure}
|
|||
|
SYST
|
|||
|
\begin{figure}[H]
|
|||
|
\includegraphics[width=1\linewidth]{imgs/2024-01-02-20-41-21.png}
|
|||
|
\caption{服务器回复的信息}
|
|||
|
\end{figure}
|
|||
|
PWD
|
|||
|
\begin{figure}[H]
|
|||
|
\includegraphics[width=1\linewidth]{imgs/2024-01-02-20-41-44.png}
|
|||
|
\caption{服务器回复的信息}
|
|||
|
\end{figure}
|
|||
|
TYPE A
|
|||
|
\begin{figure}[H]
|
|||
|
\includegraphics[width=1\linewidth]{imgs/2024-01-02-20-42-10.png}
|
|||
|
\caption{服务器回复的信息}
|
|||
|
\end{figure}
|
|||
|
PORT 172,16,0,73,10,10
|
|||
|
\begin{figure}[H]
|
|||
|
\includegraphics[width=1\linewidth]{imgs/2024-01-02-20-42-37.png}
|
|||
|
\caption{服务器回复的信息}
|
|||
|
\end{figure}
|
|||
|
|
|||
|
PORT 命令对端口信息是分成两个字节,当作两个8位整数传递;客户端使用的端口值为2570。
|
|||
|
|
|||
|
PORT的格式为 PORT $x_1,x_2,x_3,x_4,x_5,x_6$,其中 $x_1,x_2,x_3,x_4$ 携带的是本机的 IP 地址,$x_5,x_6$ 为端口值,计算方法为 $x_5\times 256+x_6$,该命令的用途是告知服务器本机客户端使用的端口。
|
|||
|
|
|||
|
这是FTP服务器是使用主动模式创建数据连接的,即客户端告知服务器自己开启的数据连接的端口,之后服务器从20端口主动连接客户端的这个端口。
|
|||
|
|
|||
|
STOR group7\_3\\
|
|||
|
服务器回复的信息:150 Ok to send data.
|
|||
|
|
|||
|
filedata
|
|||
|
\begin{figure}[H]
|
|||
|
\includegraphics[width=1\linewidth]{imgs/2024-01-02-20-55-17.png}
|
|||
|
\caption{filedata}
|
|||
|
\end{figure}
|
|||
|
|
|||
|
PASV
|
|||
|
\begin{figure}[H]
|
|||
|
\includegraphics[width=1\linewidth]{imgs/2024-01-02-20-57-07.png}
|
|||
|
\caption{服务器回复的信息}
|
|||
|
\end{figure}
|
|||
|
\begin{figure}[H]
|
|||
|
\includegraphics[width=1\linewidth]{imgs/2024-01-02-21-01-13.png}
|
|||
|
\caption{服务器回复的信息}
|
|||
|
\end{figure}
|
|||
|
该命令的用途是告知服务器使用被动模式。
|
|||
|
|
|||
|
这里FTP服务器使用被动模式创建数据连接,即服务器告知客户端自己开启的数据连接的端口,之后客户端从随机端口连接服务器的这个端口。
|
|||
|
|
|||
|
在服务器回复的信息中可知服务器端使用的端口为:$227\times 256+126=58238$。
|
|||
|
\begin{figure}[H]
|
|||
|
\includegraphics[width=1\linewidth]{imgs/2024-01-02-20-55-49.png}
|
|||
|
\caption{服务器回复的信息}
|
|||
|
\end{figure}
|
|||
|
|
|||
|
RETR group7\_3
|
|||
|
\begin{figure}[H]
|
|||
|
\includegraphics[width=1\linewidth]{imgs/2024-01-02-21-02-12.png}
|
|||
|
\caption{服务器回复的信息}
|
|||
|
\end{figure}
|
|||
|
|
|||
|
其内容是步骤(9)输入的信息。
|
|||
|
|
|||
|
QUIT
|
|||
|
\begin{figure}[H]
|
|||
|
\includegraphics[width=1\linewidth]{imgs/2024-01-02-21-02-52.png}
|
|||
|
\caption{服务器回复的信息}
|
|||
|
\end{figure}
|
|||
|
|
|||
|
会话交互图如前文的会话分析所示。
|
|||
|
|
|||
|
\thinkingquestion{
|
|||
|
\item FTP的数据连接存在两种模式:主动模式和被动模式,说明各自的工作过程。如果服务器和客户端之间存在防火墙,使用哪种模式会引起一些麻烦?
|
|||
|
|
|||
|
主动模式和被动模式各自的工作过程在前文已有提到,如果存在防火墙,一般防火墙会阻止未经许可的向客户端的传入连接,所以使用主动模式会引起一些麻烦。
|
|||
|
}
|
|||
|
}
|
|||
|
\end{enumerate}
|
|||
|
\end{document}
|