FTP服务器安装与配置.docx
《FTP服务器安装与配置.docx》由会员分享,可在线阅读,更多相关《FTP服务器安装与配置.docx(30页珍藏版)》请在冰豆网上搜索。
FTP服务器安装与配置
毕业论文(设计)
FTP服务器安装与应用
学生姓名:
谭芳
班级:
08网络2班
指导老师:
刘元君
系 部:
信息技术系
提交时间:
2010年3月1日
FTP服务器安装与应用
作 者:
谭芳
指导老师:
刘元君
(湖南商务职业技术学院 08级信息技术系 计算机网络专业,长沙410205)
摘要
FTP服务器,就是在互联网上提供存储空间的计算机,它们依照FTP协议提供服务。
FTP的全称是FileTransferProtocol(文件传输协议)。
顾名思义,就是专门用来传输文件的协议。
简单地说,支持FTP协议的服务器就是FTP服务器。
与大多数Internet服务一样,FTP也是一个客户机/服务器系统。
用户通过一个支持FTP协议的客户机程序,连接到在远程主机上的FTP服务器程序。
用户通过客户机程序向服务器程序发出命令,服务器程序执行用户所发出的命令,并将执行的结果返回到客户机。
比如说,用户发出一条命令,要求服务器向用户传送某个文件的一份拷贝,服务器会响应这条命令,将指定文件送至用户的机器上。
客户机程序代表用户接收到这个文件,将其存放在用户目录中。
在FTP的使用当中,用户经常遇到两个概念:
“下载”(Download)和“上载”(Upload)。
“下载”文件就是从远程主机拷贝文件至自己的计算机上;“下载”文件就是将文件从自己的计算机中拷贝至远程主机上。
用Internet语言来说,用户可通过客户机程序向(从)远程主机上载(下载)文件。
关键字:
FTP服务器传输下载上载
目录
1.前言1
2.第1章概述2
2.1FTP服务器的概述2
2.1.1含义2
2.1.2FTP的工作原理2
2.1.3FTP的两种传输方式3
2.1.4FTP的两种连接模式3
2.1.5FTP服务数据连接的主动模式和被动模式4
2.1.6FTP的管理4
3.第2章FTP服务器的安装6
3.1安装FTP服务器6
3.2测试已安装的FTP服务器7
3.3发布FTP站点8
3.3.1利用“默认FTP站点”发布主FTP站点9
3.3.2利用其他主目录发布主FTP站点9
3.3.3如何在同一台FTP服务器上同时发布多个主FTP站点12
3.4设置用户身份验证13
3.4.1FTP站点提供了两种验证方式:
14
3.5创建具有特殊要求的FTP站点15
3.5.1FTP用户隔离方式15
3.5.2“用ActiveDirectory隔离用户”FTP站点的创建和使用16
3.5.3创建“用ActiveDirectory隔离用户”的FTP站点19
3.5.4连接到“用ActiveDirectory隔离用户”的FTP站点20
4.第3章总结22
参考文献23
致谢24
1.前言
Linux作为桌面操作系统,在操作的易用性和应用软件的数量来看,远不如windows系统。
Linux的优势在于网络服务应用,越来越多的企业开始部署以Linux为主要操作系统的网络服务平台。
基于此,学习、掌握和使用Linux操作系统已成为当务之急。
一般来说,用户联网的首要目的就是实现信息共享,文件传输是信息共享非常重要的一个内容之一。
Internet上早期实现传输文件,并不是一件容易的事,我们知道Internet是一个非常复杂的计算机环境,有PC,有工作站,有MAC,有大型机,据统计连接在Internet上的计算机已有上千万台,而这些计算机可能运行不同的操作系统,有运行Unix的服务器,也有运行Dos、Windows的PC机和运行MacOS的苹果机等等,而各种操作系统之间的文件交流问题,需要建议一个统一的文件传输协议,这就是所谓的FTP。
基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议,这样用户就可以把自己的文件传送给别人,或者从其他的用户环境中获得文件。
为了实现Linux环境下的FTP服务器配置,目前RedHatEnterpriseLinux中默认安装的是vsftpd,由于FTP操作性好,开放性强,在Internet上进行信息传递与共享非常方便,所以目前越来越多的FTP服务器连入在Internet,实现了越来越多的资源共享。
下面重点介绍FTP服务器的基本概念、VSFTP服务器的实际架设以及访问FTP服务器的方法等。
2.第1章概述
2.1FTP服务器的概述
2.1.1含义
FTP协议(filetransferprotocol)即文件传输协议,协议的主要功能是将文件从一台计算机传送到另一台计算机,是一个用于简化IP网络上系统之间文件传送的协议。
FTP使用传输层的TCP协议,所以它建立的就是一个面向连接可靠的链路。
使用FTP协议可以高效地从FTP服务器下载大信息量的数据文件,将远程主机上的文件复制到自己的计算机上,这样就实现了资源共享和传递信息的母的。
它和HTTP协议一样,工作在TCP/IP协议栈的应用层。
—个完整的FTP网络由FTP服务器和FTP客户端组成,当用户启动本地计算机(客户端FTP)的时候,同时也启动了远程计算机上的FTP服务器程序,首先FTP客户端向远程FTP服务器发出FTP连接请求,远程FTP服务器接到该请求后作出应答,然后FTP客户端发出文件请求,服务器与客户端进行文件的上传或下载,最后FTP客户端关闭连接。
可见FTP的主要作用就是让用户连接上远程计算机,并与远程计算机进行文件的交换。
2.1.2FTP的工作原理
一个FTP站点可以是公用的,私有的,或者两者兼有之。
我们可以为FTP帐号定义权限,让它可以访问整个FTP服务的目录结构,或者只是特定的区域。
FTP服务器可以设置为允许任何人连接和传输文件,这种访问方式被称为匿名访问。
当我们使用匿名方式登录到FTP站点时,系统默认使用“anonymous”作为用户名,用“guest”或某个E-Mail地址作为密码。
实际上,FTP已经包含于InternetExplorer浏览器中,因此用户可以使用浏览Web的程序同时浏览FTP服务器。
FTP的连接步骤如下:
(1)打开熟知端口(端口号为21),使客户进程能连接上;
(2)等待客户进程发起连接建立请求;
(3)启动从属进程来处理客户进程发来的请求。
从属进程对客户进程的请求处理完毕后即终止,但从属进程在运行期间根据需要还可能创建其他一些子进程。
(4)回到等待状态,继续接受其他客户进程发来的请求。
主进程与从属进程的处理是并发地进行。
2.1.3FTP的两种传输方式
(1)ASCII传输方式。
假定用户正在拷贝的文件包含的简单ASCII码文本,如果在远程机器上运行的不是UNIX,当文件传输时ftp通常会自动地调整文件的内容以便于把文件解释成另外那台计算机存储文本文件的格式。
但是常常有这样的情况,用户正在传输的文件包含的不是文本文件,它们可能是程序,数据库,字处理文件或者压缩文件(尽管字处理文件包含的大部分是文本,其中也包含有指示页尺寸,字库等信息的非打印字符)。
在拷贝任何非文本文件之前,用binary命令告诉ftp逐字拷贝,不要对这些文件进行处理,这也是下面要讲的二进制传输。
(2)二进制传输模式。
在二进制传输中,保存文件的位序,以便原始和拷贝的是逐位一一对应的。
即使目的地机器上包含位序列的文件是没意义的。
例如,macintosh以二进制方式传送可执行文件到IBMVM系统,在对方系统上,此文件不能执行。
如果你知道这两台机器是同样的,则二进制方式对文本文件和数据文件都是有效的。
2.1.4FTP的两种连接模式
(1)控制连接;控制连接用于传递客户端的命令和服务器端对命令的响应,它使用服务器的21端口。
(2)数据连接:
数据连接用于传输文件和其它数据,例如目录列表等。
这种连接在需要数据传输时建立,而一旦数据传输结束就关闭,每次使用的端口不一定相同。
而且,数据连接既可能是客户端发起的,也可能是服务器端发起的。
如图1所示
图1.1
2.1.5FTP服务数据连接的主动模式和被动模式
FTP的数据连接也存在两种模式:
主动模式和被动模式。
主动(PORT)模式是从服务器端向客户端发起连接;被动(PASV)模式是客户端向服务器端发起连接。
如下图所示:
图1.2
图1.3
2.1.6FTP的管理
(1)、帐户管理
如果用户比较多的话,建议对用用户作适当的分组管理,以免出现混乱的状况。
例如我建立的FTP是为全系师生服务的所以作了以下分组(不设匿名访问):
不同的组拥有不同的用户名和密码,并指定不同的访问目录路径,对文件、目录等分别拥有不同的权限,当然管理员组是最高权限的。
另外对上传的文件应进行归类管理,分别放在不同的文件夹,过时无用的文件要及时删除。
(2)、用户配额管理
随着用户上传文件的增多,硬盘的空间很快就会被文件占用,如果不限制用户使用的磁盘空间,就很可能由于某个用户上传的文件特别多而影响其他用户的正常使用,所以应给每个用户分配一个磁盘配额(一般管理员组帐号则可不作限制)以便特殊情况下需要使用较大磁盘空间时,可以通过管理员帐户实现。
(3)、活动用户的管理
管理员应经常地查看一下FTP服务器并观察各用户的活动情况,必要时可采取例如停止传送、剔除用户监视用户等措施。
但一般如果不是十分必要不要采取监视用户措施,因监视用户将会占用较多的系统资源。
对于恶意破坏服务器的用户应立刻拒绝其登录,并事后警告。
(4)、服务器带宽等资源管理
为保障服务器的正常运行,建议对服务器进行一些必要的设置,如设置合适的最大上传和下载速度,并限制同一时间允许登录到服务器的数量等,建议勾选口删除部分已上传文件,禁用反超时调度,拦截FTP-bounce攻击和FXP等。
此外,日常还要注意服务器系统的维护,认真做好安全、防毒等工作。
3.
第2章FTP服务器的安装
在WindowsServer2003中,FTP服务是通过FTP组件来实现的。
在安装IIS时,默认情况下系统不会安装FTP组件,而必须单独安装。
在本例中,FTP服务器的计算机名为server1,IP地址为172.16.1.10,使用的访问域名为。
在安装FTP组件之前,需要在DNS服务器的区域下添加一条记录ftp,其IP地址指向172.16.1.10。
3.1安装FTP服务器
(1)依次打开[开始]→[控制面板]→[添加/删除Windows程序]选项,再按→[添加/删除Windows组件]按钮,如图2.1所示。
(2)选中[应用程序服务器]组件,再按[详细信息]按钮,然后选中[Internet信息服务(IIS)]子组件,至[详细信息],如图2.2所示
图2.1:
选"应用程序服务器"组件图2.2:
选"Internet信息服务"组件
(3)选中[文件传输协议(FTP)]组件,再按[确定]按钮,如图2.3所示。
(4)开始安装组件,此时可能需要放入WindowsServer2003安装光盘。
安装成功界面如图2.4所示。
图2.3:
选"文件传输协议服务"图2.4:
FTP安装完成提示信息
3.2测试已安装的FTP服务器
在通过以上方法安装好FTP组件后,我们还需要对FTP站点进行测试,以确保FTP服务已经正常运行。
具体方法如下:
图2.5:
安装FTP组件后系统创建的"TFP站点"
请确认该默认FTP站点的“状态”为“正在运行”。
如果“状态”为“停止”,可在选取“FTP站点”后,单击鼠标右键,在出现的快捷菜单中选择“启动”选项来启动FTP服务。
如果无法启动FTP服务,可能的原因主要有三种:
(1)该服务器上安装有其他的FTP服务软件(如Serv-U),这时请将已有的FTP服务软件关闭或删除,然后再重新启动FTP服务。
(2)TCP协议的21号端口被其他软件占用,因为FTP系统默认的TCP端口为21,如果该端口被其他软件占用,则FTP服务无法正常启动。
这时,可修改已占用21端口的软件,将TCP端口改为其他未被使用的端口,也可以重新修改FTP软件的端口,如使用2121。
(3)“文件传输协议(FTP)服务”组件的安装有问题,这时可先删除该组件,然后再重新安装。
接下来,我们可以在任何一台客户端计算机上测试“默认FTP站点”的运行情况,有两种方法进行测试。
图2.6:
通过命令测试FTP服务器的连接情况
图2.7:
通过浏览器测试FTP服务器的连接情况
3.3发布FTP站点
IIS中FTP站点的发布功能相对来说没有Web网站的强,在IIS中可以利用“主机头名”来在一台服务器上同时发布多个主Web网站(例如和),但却无法同时发布多个主FTP站点,这也是IIS中FTP服务的一个不足。
提示:
这里所说的“主FTP站点”,是指使用系统默认的TCP端口(21)和主目录发布的FTP站点。
为此,当一台服务器只有1个IP地址时,只能够发布一个主FTP站点,而其他FTP站点的发布只能通过不同的TCP端口或虚拟目录的方式来发布。
如果要在同一台FTP服务器上同时发布多个主FTP站点,只能在一台FTP服务器上设置多个IP地址,使每一个IP地址对应一个主FTP站点。
这种方法在局域网中比较实用,但是在Internet中不可取,因为一般用户很少有那么多的公网IP地址。
3.3.1利用“默认FTP站点”发布主FTP站点
发布第一个主FTP站点。
一般有两种方法:
一种是将要发布的内容复制到“默认FTP站点”的主目录下;另一种通过其他主目录发布主FTP站点。
本小节先介绍利用“默认FTP站点”发布主FTP站点的方法。
如果要通过“默认FTP站点”发布主FTP站点,就可以将要发布的内容全部复制到“默认FTP站点”的主目录“e:
\inetpub\ftproot”(其中“e:
”为WindowsServer2003的安装分区)中即可。
之后,在一台与该FTP服务器连接的客户端的浏览器地址栏中输入ftp:
//172.16.1.10就可以访问到该FTP站点下的内容,如图2.8所示。
图2.8:
利用"默认FTP站点"发布主FTP站点
3.3.2利用其他主目录发布主FTP站点
利用“默认FTP站点”发布主FTP站点,虽然操作方便、简单,但却存在一些不足和缺点。
例如,由于“默认FTP站点”与WindowsServer2003位于同一个硬盘分区,所以FTP站点的内容在安全性和空间上都受到了限制。
另外,由于“默认FTP站点”的许多设置都是系统默认性,主要用于在安装FTP组件后对FTP服务的测试,所以“默认FTP站点”的功能也很有限。
所以,对于一些较大型的、在Internet上发布的网站,一般不使用“默认FTP站点”,而是利用其他主目录方式来发布主FTP站点。
提示:
在利用其他主目录发布主FTP站点之前,一定要停止“默认FTP站点”。
其方法是在“Internet信息服务(IIS)管理器”窗口中,选取“默认FTP站点”后,单击鼠标右键,在出现的快捷菜单中选择“停止”选项,使“默认FTP站点”处于停止状态。
在此基础上,下面我们介绍利用其他主目录(f:
\soft)发布主FTP站点的方法,假设主FTP站点的域名为,IP地址为172.16.1.10。
图2.9:
输入FTP站点的描述图2.10:
设置FTP站点的IP和端口号
图2.11:
设置虚拟目录站点的别名图2.12:
设置虚拟目录站点的路径
图2.13:
设置虚拟目录站点的权限图2.14:
显示所创建的虚拟目录的站点
图2.15:
通过浏览器登入虚拟目录FTP站点
图2.16:
利用命令行访问虚拟目录FTP站点的操作过程
3.3.3如何在同一台FTP服务器上同时发布多个主FTP站点
在实际应用中,用户经常需要在同一台FTP服务器上同时发布多个主FTP站点。
在本讲前面已经介绍了主FTP站点(对应的IP地址为172.16.1.10)的发布和使用方法。
下面,将介绍在该FTP服务器上发布另一个FTP站点(对应的IP地址同样为172.16.1.10,发布的主目录为f:
\pkw2005)的方法。
首先在DNS服务器上必须创建一个IP地址指向该FTP服务器(172.16.1.10)的域名。
然后,根据通过以下的方法来创建该FTP站点。
图2.17:
设置FTP站点描述图2.18:
设置站点的IP和端口
图2.19:
显示已创建的FTP站点的名称
图2.20:
利用不同的TCP端口来连接不同的FTP站点
还需要说明的是,如果在一台FTP服务器上同时设置了多个IP地址,可以给每一个IP地址设置一个主FTP站点,而所有的主FTP站点全部使用系统默认的21端口。
例如,使用的IP地址为172.16.1.10,而使用的是另一个IP地址192.168.0.10。
如果有足够的IP可用,就可以建立这种一对一的关系。
这种情况下,在发布FTP站点时,当出现如图21所示的对话框时,只需要给要发布的FTP站点分配一个IP地址即可。
图2.21:
给发布的站点分配一个IP
3.4设置用户身份验证
目前,用户访问网络中的大部分FTP站点时是不需要进行身份验证的,即用户使用匿名方式访问这些站点。
但是,也有一些FTP站点在用户访问时需要输入正确的用户名和密码,否则无法进行访问。
在“Internet信息服务(IIS)管理器”窗口中选取要设置的FTP站点,单击鼠标右键,在出现的快捷菜单中选择“属性”选项,然后选择“安全账户”标签项,打开如图34所示的对话框。
图2.22:
FTP站点用户账户验证设置
3.4.1FTP站点提供了两种验证方式:
(1).匿名FTP验证方式
当选取“允许匿名连接”选项后,表示用户可以利用匿名FTP验证(AnonymousFTPAuthentication)方式来访问FTP站点。
需要说明的是,虽然在安装IIS组件时系统并没有创建名称为anonymous的匿名账户,但却自动创建了一个用户账户“IUSR_计算机名称”,并默认用此账户来作为匿名连接时的账户。
例如,在名称为“Server1”的计算机上,在安装了IIS后,系统默认的匿名账户名称则为IUSR_SERVER1。
提示:
如果该FTP服务器安装了活动目录(ActiveDirectory),则“IUSR_计算机名称”的密码必须与活动目录数据库内的“IUSR_计算机名称”的密码相同;如果该FTP服务器未安装活动目录,则必须与本地安全性数据库内的“IUSR_计算机名称”的密码相同。
否则,客户端无法通过匿名方式登录该FTP站点。
还需要说明的是,由于系统默认是所有Web网站和FTP站点都使用“IUSR_计算机名称”来代表匿名账户,所以如果用户修改了活动目录数据库或本地安全性数据库中“IUSR_计算机名称”的密码,则必须同时修改所有Web网站和FTP站点设置内的“IUSR_计算机名称”的密码。
(2).基本FTP验证方式
基本FTP验证(BasicFTPAuthentication)要求客户端必须利用已设置的用户账户和密码来登录FTP站点。
但需要说明的是,该用户账户和密码在网络是通过明文来传输,并不会被加密。
在图4.34中,如果选取了“只允许匿名连接”,则所有用户都必须利用匿名方式来访问FTP站点,不可以利用在活动目录数据库或本地安全性数据库中创建的用户账户;如果取消了“允许匿名连接”,则所有用户只能使用正确的用户账户和密码来访问FTP站点,而不能通过匿名方式来访问;如果选择了“允许匿名连接”且取消了“只允许匿名连接”,则即可以匿名访问,也可以通过用户账户来访问。
3.5创建具有特殊要求的FTP站点
随着FTP应用的日渐普及,传统的匿名登录和简单的身份验证已无法满足部分用户的特殊要求。
为此,在WindowsServer2003操作系统中提供了“FTP用户隔离”功能,通过该功能可以创建一些具有特殊要求的FTP站点。
3.5.1FTP用户隔离方式
WindowsServer2003的IIS提供了“FTP用户隔离”功能,它可以让每个用户在同一台FTP服务器上分别拥有一个专用的文件夹。
这样,当不同的用户登录FTP站点时,系统会根据不同的用户访问不同的文件夹,而且不允许不同文件夹之间的切换。
IIS6.0提供了3种用户隔离方式来创建FTP站点。
提示:
WindowsServer2003中的IIS6.0提供的“FTP用户隔离”功能,必须在创建FTP站点时进行确认。
同时,“FTP用户隔离”方式一旦确定后,将来不允许进行修改。
(1).不隔离用户
当用户连接到该模式的FTP站点时,他们将全部直接访问该FTP站点的主目录。
(2).隔离用户
在隔离用户方式下,网络管理员必须在FTP站点的主目录下为每一个用户分别创建一个专用的子文件夹(即该子文件夹就是该用户的主目录),而且该子文件夹的名称必须与用户的登录账户名称相同。
当用户登录该FTP站点时,将直接访问该用户的主目录。
(3).用ActiveDirectory隔离用户
在用ActiveDirectory(活动目录)隔离用户方式下,用户必须使用域用户账户来连接指定的FTP站点,同时必须在ActiveDirectory的用户账户内指定其专用的主目录。
与“隔离用户”方式不同,“用ActiveDirectory隔离用户”的用户主目录不需要一定创建在FTP站点的主目录下,而可以创建在本地的其他分区或文件夹下,也可以创建在网络中的其他计算机上。
当用户登录该FTP站点时,将根据登录的用户账户直接访问用户的主目录,而且无法进入其他用户的主目录。
3.5.2“用ActiveDirectory隔离用户”FTP站点的创建和使用
下面在FTP服务器上,为“网络中心”的所有工作人员创建一个“用ActiveDirectory隔离用户”的FTP站点,凡是“网络中心”的人员,其FTP站点全部放置在“f:
\nicenter”目录下(也可以创建在网络中的其他计算机上),所以“f:
\nicenter”为根目录。
在根目录下,为每一个用户创建一个子文件夹,如NIC1和NIC2子文件夹分别代表用户wq2006和lfj的用户主目录。
这样,当用户wq2006访问FTP站点时会直接打开f:
\mocenter\nic1下的内容,而用户lfj访问FTP站点时会直接打开f:
\mocenter\nic2下的内容。
具体创建过程和方法如下:
(1).在ActiveDirectory数据库中设置用户的主目录
在WindowsServer2003域的ActiveDirectory(活动目录)数据库中存在两个用来支持“用ActiveDirectory隔离用户”的FTP站点的属性:
FTPRoot和FTPDir,其中:
•FTPRoot。
用来指定用户主目录所在的根目录,本例应为f:
\nicenter。
•FTPDir。
用来指定FTPRoot根目录下的用户主目录(子文件夹),本例应为nic1、nic2等。
下面需要设置用户的FTPRoot和FTPDir两个属性,一般有两种方法:
第1种方法是运行iisftp.exe命令程序。
现在,要将域用户wq2006的主目录指定到f:
\nicenter\nic1,则需要输入以下的命令(正确的操作过程如图2.23所示):
图2.23:
将域用户wq