FTP(File Transfer Protocol,文件传输协议)是一种用于在网络上进行文件传输的标准协议。它工作在OSI模型的第七层,TCP模型的第四层,即应用层。
FTP允许用户以文件操作的方式(如文件的增、删、改、查、传送等)与另一主机相互通信。用户并不真正登录到自己想要存取的计算机上面而成为完全用户,可用FTP程序访问远程资源,实现用户往返传输文件、目录管理以及访问电子邮件等等,即使双方计算机可能配有不同的操作系统和文件存储方式。
它使用TCP进行传输,而不是UDP。在客户与服务器建立连接前,需要经过一个“三次握手”的过程,保证连接是可靠的,而且是面向连接的,为数据传输提供可靠保证。
FTP服务器(File Transfer Protocol Server)是在互联网上提供文件存储和访问服务的计算机,它们依照FTP协议提供服务。FTP是专门用来传输文件的协议,支持FTP协议的服务器就是FTP服务器。
FTP服务器具有以下特性:
- 可根据实际需要设置各用户的使用权限。
- 具有跨平台的特性,即在UNIX、Linux和Windows等操作系统中都可实现FTP客户端和服务器,相互之间可跨平台进行文件的传输。
- FTP协议有PORT和PASV两种工作模式,即主动模式和被动模式。
- FTP服务是网络中经常采用的资源共享方式之一。
- FTP协议采用客户/服务器模式,用户可以在FTP服务器中进行文件的上传或下载等操作。
- 用户可以通过它把自己的计算机与世界各地所有运行FTP协议的服务器相连,访问服务器上的大量程序和信息。
优点:
- 方便的文件传输:FTP服务器提供了高效的文件传输方式,使得在网络环境下进行大容量文件的传输成为可能。
- 多用户支持:FTP服务器支持多个用户同时进行文件传输操作,每个用户可以拥有独立的账号和密码,从而实现对文件的独立管理和访问权限的控制。
- 可靠性和可扩展性:FTP服务器具备高度稳定的性能和可靠性,能够处理大规模的文件传输业务。同时,它还支持同时处理多个客户端的连接请求,可以根据实际需求进行横向扩展。
- 完善的用户权限管理系统:FTP服务器拥有完善的用户权限管理系统,可以详细设置每个用户的权限,比如只能上传,不能修改或删除等。
- 安全性高:FTP服务器可以进行数据的加密传输,更好地保护个人隐私。
缺点:
- 安全性较低:FTP服务器传输的数据是明文的,容易被黑客截取和窃听,对数据的保护性较差。此外,FTP服务器的身份验证机制相对简单,容易受到暴力等攻击。
- 传输速率受网络影响:FTP服务器的传输速率受到网络带宽和连接稳定性的影响,当网络较为拥挤或者不稳定时,传输速率会受到明显影响,降低传输效率。
- 对防火墙的适配性差:FTP服务器需要在防火墙上打开特定的端口,才能够正常进行文件传输。这在某些安全要求较高的网络环境下可能会遭到限制或限制使用。
- 使用上感觉不如网络共享方便:网络共享的文件可以像本地文件一样使用,而FTP必须是下载下来才能使用。
在计算机管理中选择本地用户和组,然后右键新建组
在计算机管理中选择本地用户和组,然后右键新建用户
点击管理,然后进行安装FTP服务器
安装好IIs后点击工具选择第一个.然后添加FTP站点
?
右击FTP文件夹属性>>安全>>设置权限
输入ftp://localhost然后输入账号密码即可,只可以自己访问自己
新建规则
?
在外部输入ftp://加ip地址即可访问?
?
?在MobaXterm中选择FTP然后输入端口号即可
?
?
端口是英文“port”的意译,可以认为是计算机与外界通讯交流的出口。硬件领域的端口又称接口,如USB端口、串行端口等。软件领域的端口一般指网络中面向连接服务和无连接服务的通信协议端口,是一种抽象的软件结构,包括一些数据结构和I/O(基本输入输出)缓冲区。
在网络技术中,端口有好几种意思。集线器、交换机、路由器的端口指的是连接其他网络设备的接口,如RJ-45端口、Serial端口等,指传统意义上的硬件接口。而这里所指的端口不是指物理意义上的端口,而是特指TCP/IP协议中的端口,是逻辑意义上的端口。
TCP/IP协议中的端口是将IP地址比作一间房子,端口就是出入这间房子的门。一个IP地址的端口可以有65536个,端口是通过端口号来标记的,端口号只有整数,范围是从0到65535。
在Internet上,各主机间通过TCP/IP协议发送和接收数据包,各个数据包根据其目的主机的IP地址来进行互联网络中的路由选择,将数据包顺利传送到目的主机。但是大多数操作系统都支持多程序(进程)同时运行,那么目的主机应该把接收到的数据包传送给哪一个进程,于是,端口机制便由此被引入进来。
?
- FTP:用于文件传输,通常使用21端口。
- SSH:安全外壳协议,用于在网络中安全地远程登录和执行命令,通常使用22端口。
- Telnet:用于远程登录到远程主机并执行命令,通常使用23端口。
- SMTP:简单邮件传输协议,用于发送电子邮件,通常使用25端口。
- DNS:域名系统,用于将域名解析为与之对应的IP地址,通常使用53端口。
- HTTP:超文本传输协议,用于在Web浏览器和Web服务器之间传输数据,通常使用80端口。
- HTTPS:安全超文本传输协议,通过加密通信保护Web数据传输,通常使用443端口。
- POP3:邮局协议版本3,用于从邮件服务器接收电子邮件,通常使用110端口。
- IMAP:Internet消息访问协议,用于从邮件服务器接收和管理电子邮件,通常使用143端口。
- SNMP:简单网络管理协议,用于管理和监控网络设备,通常使用161端口。
- RDP:远程桌面协议,用于远程访问和控制计算机,通常使用3389端口。
?
公认端口(Well Known Ports)是指从0到1023的端口号,这些端口紧密绑定于一些服务,通常用于明确表明某种服务的协议。这些端口只有系统特许的进程才能使用,包括一些知名服务和应用程序的标准端口。例如,80端口通常用于HTTP通讯,21端口用于FTP服务等。这些端口号的分配是为了方便网络服务的识别和管理,以确保正确的数据传输和网络通信。
?
注册端口号是指在计算机网络中被分配给特定应用程序或服务的一组端口号,范围在1024到49151之间。这些端口号用于标识那些已经被注册并且具有特定功能的应用程序。底层原理是指在计算机网络中,注册端口号的分配和使用的机制和实现原理。注册端口号的分配由互联网号码分配机构(IANA)负责,开发者可以向IANA提交申请,请求分配一个注册端口号用于特定的应用程序或服务。在申请时,开发者需要提供有关应用程序或服务的详细信息,包括应用程序的名称、功能描述、协议类型等。IANA会根据申请的内容进行审核,确保端口号的分配合理和符合网络标准。
?
动态端口(也称为私有端口),其范围是从49152到65535。之所以称为动态端口,是因为它一般不固定分配某种服务,而是动态分配。这些端口在没有被服务器资源占用的时候,可以用用户端动态选用为源端口。