FTP是啥意思 有什么好处?是局域网么?
FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文传协议”。用于Internet上的控制文件的双向传输。同时,它也是一个应用程序(Application)。用户可以通过它把自己的PC机与世界各地所有运行FTP协议的服务器相连,访问服务器上的大量程序和信息。FTP的主要作用,就是让用户连接上一个远程计算机(这些计算机上运行着FTP服务器程序)察看远程计算机有哪些文件,然后把文件从远程计算机上拷到本地计算机,或把本地计算机的文件送到远程计算机去
简单地说,支持FTP协议的服务器就是FTP服务器,下面介绍一下什么是FTP协议。(文件传输协议) 一般来说,用互联网的首要目的就是实现信息共享,文件传输是信息共享非常重要的一个内容之一。Internet上早期实现传输文件,并不是一件容易的事,我们知道 Internet是一个非常复杂的计算机环境,有PC,有工作站,有MAC,有大型机,而连接在Internet上的计算机有上千万台,并且这些计算机可能运行不同的操作系统,有运行Unix的服务器,也有运行Dos、Windows的PC机和运行MacOS的苹果机等等,而各种操作系统之间的文件交流问题,需要建立一个统一的文件传输协议,这就是所谓的FTP。基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议,这样用户就可以把自己的文件传送给别人,或者从其它的用户环境中获得文件。
以下载文件为例,当你启动FTP从远程计算机拷贝文件时实际上启动了两个程序:一个本地机上的FTP客户程序,它向FTP服务器提出拷贝文件的请求。另一个是启动在远程计算机的上的FTP服务器程序,它响应你的请求把你指定的文件传送到你的计算机中。FTP采用“客户机/服务器”方式,用户端要在自己的本地计算机上安装FTP客户程序。FTP客户程序有字符界面和图形界面两种。字符界面的FTP的命令复杂、繁多。图形界面的FTP客户程序,操作上要简洁方便的多。
FTP的工作原理是在 OSI 模型的第七层, TCP 模型的第四层, 即应用层, 使用TCP传输而不是 UDP, 客户在和服务器建立连接前要经过一个“三次握手”的过程, 保证客户与服务器之间的连接是可靠的。
在开发网站的时候,通常利用FTP协议把网页或程序传到Web服务器上。此外,由于FTP传输效率非常高,在网络上传输大的文件时,一般也采用该协议。
默认情况下FTP协议使用TCP端口中的 20和21这两个端口,其中20用于传输数据,21用于传输控制信息。
但是,是否使用20作为传输数据的端口与FTP使用的传输模式有关,如果采用主动模式,那么数据传输端口就是20;如果采用被动模式,则具体最终使用哪个端口要服务器端和客户端协商决定。
扩展资料
FTP 客户端首先和FTP服务器的TCP 21端口建立连接,通过这个通道发送命令,客户端需要接收数据的时候在这个通道上发送PORT命令。 PORT命令包含了客户端用什么端口接收数据。
在传送数据的时候,服务器端通过自己的TCP 20端口连接至客户端的指定端口发送数据。 FTP server必须和客户端建立一个新的连接用来传送数据。
在建立控制通道的时候和Standard模式类似,但建立连接后发送的不是Port命令,而是Pasv命令。FTP服务器收到Pasv命令后,随机打开一个高端端口(端口号大于1024)并且通知客户端在这个端口上传送数据的请求,客户端连接FTP服务器此端口。
很多防火墙在设置的时候都是不允许接受外部发起的连接的,所以许多位于防火墙后或内网的FTP服务器不支持PASV模式,因为客户端无法穿过防火墙打开FTP服务器的高端端口。
而许多内网的客户端不能用PORT模式登陆FTP服务器,因为从服务器的TCP 20无法和内部网络的客户端建立一个新的连接,造成无法工作。
-ftp
共享文件夹适用于同一局域网环境,通过网上邻居就能访问,而FTP服务器适用于不在同一局域网的环境下,可以是远程的,比如朋友之间远程传输大型文件,你可以搭建个临时的FTP服务器,并把公网上的IP地址和端口号告诉对方,对方就可以使用FTP软件来下载了,如果你是在局域网中,那么需要在路由器上或服务器上做下端口映射,才能连接到你的机器上。
分为FTP和匿名FTP
『在FTP的使用当中,用户经常遇到两个概念:"下载"(Download)和"上载"(Upload)。"下载"文件就是从远程主机拷贝文件至自己的计算机上;"上载"文件就是将文件从自己的计算机中拷贝至远程主机上。用Internet语言来说,用户可通过客户机程序向(从)远程主机上载(下载)文件。』
使用FTP时必须首先登录,在远程主机上获得相应的权限以后,方可上传或下载文件。也就是说,要想同哪一台计算机传送文件,就必须具有哪一台计算机的适当授权。换言之,除非有用户ID和口令,否则便无法传送文件。这种情况违背了Internet的开放性,Internet上的FTP主机何止千万,不可能要求每个用户在每一台主机上都拥有帐号。匿名FTP就是为解决这个问题而产生的。
匿名FTP是这样一种机制,用户可通过它连接到远程主机上,并从其下载文件,而无需成为其注册用户。系统管理员建立了一个特殊的用户ID,名为anonymous,Internet上的任何人在任何地方都可使用该用户ID。 通过FTP程序连接匿名FTP主机的方式同连接普通FTP主机的方式差不多,只是在要求提供用户标识ID时必须输入anonymous,该用户ID的口令可以是任意的字符串。习惯上,用自己的E-mail地址作为口令,使系统维护程序能够记录下来谁在存取这些文件。 值得注意的是,匿名FTP不适用于所有Internet主机,它只适用于那些提供了这项服务的主机。
FTP服务器必不可少,鉴于serv-u越来越冗余繁多的设置,个人还是比较喜欢简单、干净,满足需求即可的东东,所以选择filezilla。更主要的原因是ta是开元免费使用的,虽然免费,功能却齐全,我发现现在好多人也喜欢用这款软件。
Filezilla的主要优势在于:高安全、高性能。Filezilla的安全性是来自于其开放源代码的。Filezilla的高性能来自于其代码
的开发平台是C/C++,自身基础就好于其他VB/Dephi平台开发的应用程序,因此Filezilla具有可媲美IIS的性能。在千兆网络带宽上,可
轻松满足数百用户同时高速下载。目前Filezilla也存在一些不足,主要缺点就是不支持配额,即本身不提供上传、下载总文件大小配额的功能。
Filezilla主要分服务器端和客户端,参考下载:
Server端:
https://filezilla-projectorg/downloadphptype=server
Client端:
https://filezilla-projectorg/downloadphp
1、软件的安装:
Windows下傻瓜式的一键next就可以了,我这里实验在同一台服务器上同时安装了server端和client端;
安装server的时候默认的管理端口是14147,可以自行修改,服务器的监听端口为默认的ftp的21端口。
2、启动程序
安装完成后在程序里找到filezilla启动即可,也可以暂停、卸载,在管理工具中的服务设置启动类型:
安装完server端本地登陆后的界面如下:
鼠标指到工具栏上,在左下角会有选项提示信息,从左到右依次为:
1:选中表示服务online, 未选择表示服务offline,offline就断开所有客户端的连接
2:表示锁定服务,新的客户端请求将被拒绝(返回码421 Server is locked)
3:服务器基本参数设置,可以设置ip过滤,上传下载速度等;
4:用户管理;
5:用户组管理;
6:帮助(About),服务器的版本以及相关信息
7:两个图标'/C/'和'C:\'切换目录表示方式
8:客户端的连接信息排序方式
其中服务器基本参数设置如下图,根据相关提示设置即可:
3、用户组和用户的管理
用户组:
创建一个xjx的组,右边可以对组进行添加、删除、重命名等操作,可以设置最大连接数和每个ip的链接限制;shared folders(共享文件目录)可以设置组的共享文件目录,speed limits可以对组进行相关限速;
用户:
添加用户xjx,用于以后的登陆,设置密码,等操作,新添加的用户必须设置主目录,并可设置相关目录权限
4、客户端的链接:
在主机处输入服务器的ip地址,用户名、密码等信息,端口为默认的ftp的21端口,也可以不写;这里我输入我服务器地址,或者我因为在本机上同时安装的服务端和客户端,我在主机输入127001也可,用我刚刚创建的用户来登陆;
登陆成功后,在服务器端会生成相应的日志,客户端的操作也同样有记录,下方会显示当前登陆的用户;
登陆上之后就可以进行相关的文件操作了。至此一个简单而方便的ftp服务器全部搭建完成。
5、总结
啰嗦了这么多,其实就是一个很简单的ftp服务器,服务端安装好server之后,客户端通过client来访问。基本参照提示信息就能一目了然的知道各选项的具体含义。
0条评论