如何将自己的电脑设置成FTP服务器

如何将自己的电脑设置成FTP服务器,第1张

如果只是想建个小型的同时在线用户数不超过10个的ftp服务器,且不会同时进行大流量的数据传输,可以用IIS(Internet服务器)作为服务器软件来架设。

以Windows XP中的IIS 50为例。

1安装IISWindows XP默认安装时并不安装IIS组件,需要手工添加安装。进入控制面板,找到“添加/删除步骤”,打开后选择“添加/删除Windows组件”,在发明的

“Windows组件向导”对话框中,选中“Internet信息服务(IIS)”选项。点击“详细信息”按钮,在发明的“Internet信息服务(IIS)”对话框中,选中“文件传输

协议(ftp)服务”选项,然后点击“确定”按钮即可。

安装完毕,按照系统提示重新启动计算机即可。电脑重启后,ftp服务即开始运行。

2设置IIS点击“开始→所有步骤→管理工具→Internet信息服务”菜单项,打开“Internet信息服务”对话框,右键点击“默认ftp站点”选项,选择“属性”命令。在

发明的“属性”对话框中,我们可以设置ftp服务器的名称、IP、端口、访问账户、ftp目录职位地方、用户进入ftp时接收到的消息等信息。

(1)ftp站点基本信息

点击“ftp站点”选项卡,其中的“描述”选项为该ftp站点的名称,可以随意填写;“IP地址”选项为服务器的IP,系统默认为“(全部未分配)”,一般不需

改动(如果有两个或两个以上的IP地址,最好指定为公网IP);“TCP端口”选项一般仍设为默认的21端口;“连接”选项用来设置允许同时连接服务器的用户最大连

(2)设置账户及其权限

许多ftp站点都要求用户输入用户名和密码才能登录,这个用户名和密码就叫账户。不同用户可使用相同的账户访问站点,同一个站点可设置多个账户,每个账

户可拥有不同的权限,如有的可以上传和下载,而有的则只允许下载。

(3)安全设定

“本地访问”来管理。至于“ftp站点操作员”选项,是用来添加或删除本ftp服务器具有必定权限的账户。

IIS与其他专业的ftp服务器软件不同,它基于Windows用户账号进行账户管理,本身并不能随意设定ftp服务器允许访问的账户,要添加或删除允许访问的账户

,必须先在操作系统自带的“管理工具”中的“计算机管理”中去设置Windows用户账号,然后再通过“安全账户”选项卡中的“ftp站点操作员”选项来添加或删

除。但对付Windows 2000和Windows XP专业版,系统并不提供“ftp站点操作员”账户添加与删除功能,只提供Administrator一个管理账号。

(4)设置用户登录目录

点击“主目录”选项卡,在“本地路径”框中选择好ftp站点的根目录,并设置该目录的读取、写入、目录访问权限。

“目录列表样式”中“UNIX”和“MS-DOS”的区别在于:假设将C:\ftp设为站点根目录,则当用户登录ftp后,前者会使主目录显示为“\”,后者显示为

“C:\ftp”。

设置完成后,ftp服务器就算真正建成了。使用ftp客户端软件(如Cuteftp、Fllung burning ashFXP等)时,在“主机处”填写ftp服务器的IP地址

  一般情况下,本地直接使用FTP命令可以连接远程电脑。

  1如图,在地址框中输入FTP://IP地址,然后回车。

  2在打开的窗口中输入用户名和密码进行验证。

登陆成功后就可以连接别的电脑复制文件了。

  Cmd FTP命令

  

先输入ftp回车,进入ftp模式,光标变成ftp>

输入open 1111,用户名,密码

输入cd /user/pla/ftp 

然后put 文件名称例如 c:/1txt

1、通过电脑直接找到ftpserverexe并双击运行。

2、新建一个可以登录FTP服务器的帐户。

3、需要为刚才建立的帐户添加一个密码。

4、如果没问题就设置共享的目录在哪里。

5、根据自己的实际情况来继续设置权限。

6、在成功创建一个新帐户以后选择完成。

7、等弹出图示页面即可在内网建立FTP服务器。

起初,FTP并不是应用于IP网络上的协议,而是ARPANEt网络中计算机间的文件传输协议, ARPANET是美国国防部组建的老网络,于1960-1980年使用。在那时, FTP的主要功能是在主机间高速可靠地传输文件。目前FTP仍然保持其可靠性,即使在今天,它还允许文件远程存取。这使得用户可以在某个系统上工作,而将文件存贮在别的系统。例如,如果某用户运行Web服务器,需要从远程主机上取得HTML文件和CGI程序在本机上工作,他需要从远程存储站点获取文件(远程站点也需安装Web服务器)。当用户完成工作后,可使用FTP将文件传回到Web服务器。采用这种方法,用户无需使用Telnet登录到远程主机进行工作,这样就使Web服务器的更新工作变得如此的轻松。

FTP是TCP/IP的一种具体应用,它工作在OSI模型的第七层,TCP模型的第四层上,即应用层,使用TCP传输而不是UDP,这样FTP客户在和服务器建立连接前就要经过一个被广为熟知的"三次握手"的过程,它带来的意义在于客户与服务器之间的连接是可靠的,而且是面向连接,为数据的传输提供了可靠的保证。

下面,让我们来看看,一个FTP客户在和服务器连接是怎么样的一个过程(以标准的FTP端口号为例)。

首先,FTP并不像HTTP协议那样,只需要一个端口作为连接(HTTP的默认端口是80,FTP的默认端口是21),FTP需要2个端口,一个端口是作为控制连接端口,也就是21这个端口,用于发送指令给服务器以及等待服务器响应;另一个端口是数据传输端口,端口号为20(仅PORT模式),是用来建立数据传输通道的,主要有3个作用

从客户向服务器发送一个文件。

从服务器向客户发送一个文件。

从服务器向客户发送文件或目录列表。

其次,FTP的连接模式有两种,PORT和PASV。PORT模式是一个主动模式,PASV是被动模式,这里都是相对于服务器而言的。为了让大家清楚的认识这两种模式,朗月繁星分别举例说明。

PORT模式

当FTP客户以PORT模式连接服务器时,他动态的选择一个端口号(本次试验是6015)连接服务器的21端口,注意这个端口号一定是1024以上的,因为1024以前的端口都已经预先被定义好,被一些典型的服务使用,当然有的还没使用,保留给以后会用到这些端口的资源服务。当经过TCP的三次握手后,连接(控制信道)被建立(如图1和图2)。

图1:FTP客户使用FTP命令建立于服务器的连接

图2:用netstat命令查看,控制信道被建立在客户机的6015和服务器的20端口

现在用户要列出服务器上的目录结构(使用ls或dir命令),那么首先就要建立一个数据通道,因为只有数据通道才能传输目录和文件列表,此时用户会发出PORT指令告诉服务器连接自己的什么端口来建立一条数据通道(这个命令由控制信道发送给服务器),当服务器接到这一指令时,服务器会使用20端口连接用户在PORT指令中指定的端口号,用以发送目录的列表(如图3)。

图3:ls命令是一个交互命令,它会首先与服务器建立一个数据传输通道。经验证本次试验客户机使用6044端口

当完成这一操作时,FTP客户也许要下载一个文件,那么就会发出get指令,请注意,这时客户会再次发送PORT指令,告诉服务器连接他的哪个"新"端口,你可以先用netstat -na这个命令验证,上一次使用的6044已经处于TIME_WAIT状态(如图4)。

图4:使用netstat命令验证上一次使用ls命令建立的数据传输通道已经关闭

当这个新的数据传输通道建立后(在微软的系统中,客户端通常会使用连续的端口,也就是说这一次客户端会用6045这个端口),就开始了文件传输的工作。

PASV模式

然而,当FTP客户以PASV模式连接服务器时,情况就有些不同了。在初始化连接这个过程即连接服务器这个过程和PORT模式是一样的,不同的是,当FTP客户发送ls、dir、get等这些要求数据返回的命令时,他不向服务器发送PORT指令而是发送PASV指令,在这个指令中,用户告诉服务器自己要连接服务器的某一个端口,如果这个服务器上的这个端口是空闲的可用的,那么服务器会返回ACK的确认信息,之后数据传输通道被建立并返回用户所要的信息(根据用户发送的指令,如ls、dir、get等);如果服务器的这个端口被另一个资源所使用,那么服务器返回UNACK的信息,那么这时,FTP客户会再次发送PASV命令,这也就是所谓的连接建立的协商过程。为了验证这个过程我们不得不借助CUTEFTP Pro这个大家经常使用的FTP客户端软件,因为微软自带的FTP命令客户端,不支持PASV模式。虽然你可以使用QUOTE PASV这个命令强制使用PASV模式,但是当你用ls命令列出服务器目录列表,你会发现它还是使用PORT方式来连接服务器的。现在我们使用CUTEFTP Pro以PASV模式连接服务器(如图5)。

图5:使用CUTEFTP Pro以PASV模式连接服务器

请注意连接LOG里有这样几句话:

COMMAND:> PASV

227 Entering Passive Mode (127,0,0,1,26,108)

COMMAND:> LIST

STATUS:> Connecting ftp data socket 127001: 6764

125 Data connection already open; Transfer starting

226 Transfer complete

其中,227 Entering Passive Mode (127,0,0,1,26,80) 代表客户机使用PASV模式连接服务器的26x256+108=6764端口。(当然服务器要支持这种模式)

125 Data connection already open; Transfer starting说明服务器的这个端口可用,返回ACK信息。

再让我们看看用CUTEFTP Pro以PORT模式连接服务器的情况。其中在LOG里有这样的记录:

COMMAND:> PORT 127,0,0,1,28,37

200 PORT command successful

COMMAND:> LIST

150 Opening ASCII mode data connection for /bin/ls

STATUS:> Accepting connection: 127001:20

226 Transfer complete

STATUS:> Transfer complete

其中,PORT 127,0,0,1,28,37告诉服务器当收到这个PORT指令后,连接FTP客户的28x256+37=7205这个端口。

Accepting connection: 127001:20表示服务器接到指令后用20端口连接7205端口,而且被FTP客户接受。

比较分析

在这两个例子中,请注意: PORT模式建立数据传输通道是由服务器端发起的,服务器使用20端口连接客户端的某一个大于1024的端口;在PASV模式中,数据传输的通道的建立是由FTP客户端发起的,他使用一个大于1024的端口连接服务器的1024以上的某一个端口。如果从C/S模型这个角度来说,PORT对于服务器来说是OUTBOUND,而PASV模式对于服务器是INBOUND,这一点请特别注意,尤其是在使用防火墙的企业里,比如使用微软的ISA Server 2000发布一个FTP服务器,这一点非常关键,如果设置错了,那么客户将无法连接。

最后,请注意在FTP客户连接服务器的整个过程中,控制信道是一直保持连接的,而数据传输通道是临时建立的。

在本文中把重点放到了FTP的连接模式,没有涉及FTP的其他内容,比如FTP的文件类型(Type),格式控制(Format control)以及传输方式(Transmission mode)等。不过这些规范大家可能不需要花费过多的时间去了解,因为现在流行的FTP客户端都可以自动的选择正确的模式来处理,对于FTP服务器端通常也都做了一些限制,如下:

类型:A S C I I或图像。

格式控制:只允许非打印。

结构:只允许文件结构。

传输方式:只允许流方式

至于这些内容,限于篇幅在这里就不想再介绍了。希望这篇文章能对大家有些帮助,特别是正在学习ISA Server2000的朋友和一些对FTP不很了解的朋友。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 如何将自己的电脑设置成FTP服务器

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情