网络基础—05 FTP 服务器的配置和应用
5.1实验目的
- 了解 FTP 服务器的有关概念和常见的 FTP 服务器软件
- 掌握 FTP 服务器软件 Serv-U FTP Server 6.4 的配置
- 掌握使用匿名帐户和命名帐户登录 FTP 站点的方法
5.2实验相关知识
5.2.1FTP 服务器的概念
文件传输协议(File Transfer Protocol,FTP)是用于在网络上进行文件传输的一套标准协议。它属于应用层的协议。
FTP 使用客户端/服务器模式。在进行文件传输时,FTP 的客户端和服务器之间建立的连接有“控制连接”和“数据连接”两种。当客户机向服务器发出连接请求时,要寻找连接服务器进程的 21 端口(FTP 控制端口),同时告诉服务器进程自己所使用的一个端口号,用于建立数据传送连接。控制连接在整个 FTP 的会话过程中一直打开。FTP 客户机所发出的传送请求通过控制连接发送给服务器的控制进程。控制进程在接收到 FTP 客户机的文件传送请求后,创建一个“数据传送进程”,服务器进程用 20 端口(FTP 数据端口)与客户进程所提供的端口号建立数据传送连接,数据传送进程实际完成文件的传送。在传送完毕后 关闭“数据传送连接”。
图 5.1 FTP 工作过程
- FTP 实现的目标
(1)促进文件的共享(计算机程序或数据);
(2)鼓励间接或者隐式地使用远程计算机;
(3)向用户屏蔽不同主机中各种文件存储系统的细节,大多数最新的网页浏览器和文件管理器都能和 FTP 服务器建立连接,这使得在 FTP 上通过一个接口就可以操控远程文件,如同操控本地文件一样;
(4)可靠和高效的传输数据。
-
- FTP 的缺点
(1)密码和文件内容都使用明文传输,可能产生不希望发生的窃听;
(2)因为客户端必需开放一个随机的端口以建立连接,当防火墙存在时,客户端很难过滤处于主动模式下的 FTP 流量,通过使用被动模式的 FTP,这个问题得到了解决。
-
- 匿名帐户(Anonymous)
运行 FTP 服务的许多站点都开放匿名服务,在这种设置下,用户不需要帐户就可以登录服务器。默认情况下,匿名帐户的用户名是“Anonymous”。这个帐户不需要密码,虽然通常要求输入用户的电子邮件地址作为认证密码。
- 主目录
主目录是 FTP 站点中用于已发布文件的中心位置,也是用户登录到 FTP 服务器时首先所处的位置。
- 虚拟目录
虚拟目录是为服务器硬盘上不在主目录下的一个物理目录或者其他计算机上的主目录 而指定的好记的名称,或“别名”。因为别名通常比物理目录的路径短,所以它更便于用户输入。同时,使用别名还更加安全,因为用户不知道文件在服务器上的物理位置,所以无法 使用该信息来修改文件。通过使用别名,还可以更轻松地移动站点中的目录。无需更改目录 的 URL,而只需更改别名与目录物理位置之间的映射。
5.2.2常见的 FTP 服务器
- Serv-U FTP Server
Serv-U FTP Server(以下简称 Serv-U)是一种被广泛运用的 FTP 服务器端软件,支持全系列 Microsoft Windows 操作系统。它设置简单、功能强大、性能稳定。FTP 服务器用户通过它用 FTP 协议能在 Internet 上共享文件。它并不是简单地提供文件的下载,还为用户的系统安全提供了相当全面的保护。例如:为 FTP 设置密码、设置各种用户级的访问许可等。Serv-U 不仅 100%遵从通用 FTP 标准,也包括众多的独特功能,可为每个用户提供文件共享完美解决方案。它可以设定多个 FTP 服务器、限定登录用户的权限、登录主目录及空间大小等。它具有非常完备的安全特性,支持 SSL FTP 传输,支持在多个 Serv-U 和FTP 客户端通过 SSL 加密连接保护用户的数据安全等。
- WU-FTPD
在 Unix/Linux 平台上的 FTP 服务程序非常多,不同的操作系统所内建的版本也都不一样,常见的有 wu-ftpd、proftpd 等。其中最常用的最受欢迎的是 wu-ftpd,它当初是由华盛顿大学(wuarchive.wustl.edu)开发出来的,是一个以效率以及稳定性为考虑的程序,它提供了源代码以及开放给学术单位免费使用。
- Internet 信息服务
Microsoft Windows NT 系列操作系统自带的 Internet 信息服务(IIS)包含了 FTP 服务,提供的用户、权限和文件管理等功能与操作系统的用户管理、磁盘文件系统管理等功能紧密集成。
5.3实验环境和拓扑结构
- 一台安装有 VMware 的物理主机,在实验过程中作为 FTP 客户端。
- VMware 上创建的 Windows 2003 虚拟机,在实验过程中作为 FTP 服务器。
图 5.2 实验拓扑结构
5.4实验步骤
5.4.1准备工作
参照实验指导《对等网和共享资源的设置与访问》,完成如下准备工作:
- 分别设置服务器 Windows 2003 和客户端的 IP 地址分别为 192.168.100.1 和192.168.100.2,子网掩码为 255.255.255.0;
- 将物理主机中的 Serv-U 4 复制到虚拟机 Windows 2003 中。(如果无法复制,请重新安装 VM Tools)
- 检查服务器是否安装了 IIS(Internet 信息服务)的 FTP 服务。如果安装了,则停止 IIS 的 FTP 服务:单击【控制面板】→【管理工具】→【服务】,打开【服务】窗口, 在右窗格中找到名为【FTP Publishing Service】的服务,单击鼠标右键,选择【停止】。
图 5.3 停止 IIS 的 FTP 服务
5.4.2安装\运行 Serv-U
直接点击 ServU 目录下的 ServUAdmin.exe 启动 ServU。
图 5.4 ServU 启动界面
5.4.3创建域
右键单击【domains】→【new domain】新建域: 1、输入服务器的 IP 地址:
图 5.5 输入 IP 地址
2、域名:
图 5.6 输入域名
3、端口号:(默认端口为 21)
图 5.7 输入端口号
4、域存储的方式:(按照默认存储为.ini 文件即可)
图 5.8 选择域存储的方式
5.4.4创建用户账号
右键单击【users】→【new user】新建用户账号:分别创建匿名账号和普通账号。1、输入用户名字:(匿名用户的用户名为 anonymous)
图 5.9 输入用户名
2、密码:(匿名用户不用设置密码)
图 5.10 输入密码
3、主目录:(登录之后首先访问的目录)
图 5.11 输入主目录
4、是否锁定用户在其主目录下:如果锁定用户在其主目录,则登录时只能看到路径起点为“/”(根目录),无法访问到主目录以外的范围,选择【Yes】有助于提高站点的安全性。
图 5.12 锁定用户于主目录
5、创建普通账号,步骤同上。
5.4.5设置目录权限
- 在【Serv-U Administrator】窗口中的左窗格中单击【Users】(用户)下前面创建的命名帐户,在右窗格中切换到【Dir Access】(目录访问)标签;
图 5.13 Dir Access
- 单击【Add】按钮,打开【Add file/path to access rules】(添加文件/路径到访问规则) 对话框,在【File or path】(文件或路径)中选择文件夹;
图 5.14 Add file/path to access rules
图 5.15 Dir Access
- 最后单击【Apply】(应用)按钮使该帐户的目录访问的设置生效。
5.4.6设置虚拟目录
- 在【Serv-U Administrator】窗口中的左窗格中选择刚刚创建的域点,单击【Settings】(设置),在右窗格中切换到【Virtual paths】(虚拟路径)标签;
图 5.16 Virtual paths
- 在【Virtual path mappings】(虚拟路径映射)单击【Add】按钮,打开【Virtual path mapping– step 1】对话框,在【Physical path】(物理路径)中选择前面创建的名为“Virtual_Dir”的文件夹;
图 5.17 Physical path
- Map physical path to(映射物理路径至):输入:%HOME%”(不包括双引号),表示将文件夹的物理路径映射到主目录中,成为主目录下的一个子目录;
图 5.18 Map physical path to
- mapped path name(映射路径名):输入被映射的文件夹想要显示的名称,即虚拟目录名;
图 5.19 mapped path name
5.4.7登录 FTP 站点
- 用 FTP 命令登录 FTP 站点
C:\>ftp 192.168.0.1 Connected to 192.168.0.1. 220 Serv-U FTP Server v6.4 for WinSock ready... User (192.168.0.1:(none)): Anonymous 331 User name okay, please send complete E-mail address as password. Password: 230 User logged in, proceed. ftp> |
- 用网页浏览器/资源管理器登录 FTP 站点
(1)匿名帐户登录:打开网页浏览器,在地址栏中输入ftp://服务器地址并按 Enter 键,即用匿名帐户登录。
图 5.20 匿名帐户登录
(2)命名帐户登录:打开浏览器,在地址栏中输入ftp://用户名:密码@服务器地址或ftp://用户名@服务器地址并按 Enter 键,即用命名帐户登录。也可在用匿名帐户登录后,在浏览器窗口单击【文件】菜单→【登录】,打开【登录】对话框,分别输入用户名和密码进行登录。
图 5.21 登录对话框
- 用 FTP 客户端软件登录 FTP 站点常见的 FTP 客户端软件有如下几种:
CuteFTP 是著名的商业级 FTP 客户端程序,其加强的文件传输系统能够完全满足各种用户的应用需求。文件通过构建于 SSL 或 SSH2 安全认证的客户机/服务器系统进行传输, 是一款出色、安全并且更加快速的文件传输系统。
FileZilla 是免费开源的 FTP 客户端软件,其可控性、有条理的界面和管理多站点的简化方式、特别是它的传输速度,简直是出神入化,也是它最大的特色。可以说它是一款出类 拔萃的免费 FTP 客户端软件,值得广大的用户一试。
FlashFXP 是一款功能强大的 FXP/FTP 软件,融合了一些其他优秀 FTP 软件的优点。例如:支持文件夹(带子文件夹)的文件传送、删除;支持上传、下载及第三方文件续传; 可以跳过指定的文件类型只传送需要的文件等。
还有其他的 FTP 客户端软件,如 WS_FTP、SmartFTP、FtpVoyager、CoreFTP、LeapFTP、FTP Commander、AceFTP。
5.5实验任务
- 创建一个包含匿名帐户和命名帐户的 FTP 站点。
- 为命名帐户添加虚拟目录。
- 在网页浏览器中分别以匿名帐户和命名帐户登录 FTP 站点。
5.6实验拓展和思考题
- 尝试用 IIS 创建一个包含匿名帐户和命名帐户的 FTP 站点。
- 尝试使用 FTP 客户端软件访问 FTP 站点。