FTP的主动模式和被动模式
FTP协议有两种工作方式:PORT方式和PASV方式,中文意思为主动式和被动式。
PORT(主动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时,客户端在命令链路上用PORT 命令告诉服务器:"我打开了XX端口,你过来连接我"。于是服务器从20端口向客户端的XX端口发送连接请求,建立一条数据链路来传送数据。
PASV(被动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时,服务器在命令链路上用PASV 命令告诉客户端:"我打开了XX端口,你过来连接我"。于是客户端向服务器的XX端口发送连接请求,建立一条数据链路来传送数据。
从上面可以看出,两种方式的命令链路连接方法是一样的,而数据链路的建立方法就完全不同。
(本文参考自维基百科)
带图形用户界面
名称 | 授权协议 | 支持的平台 | 相关细节 |
|---|---|---|---|
Windows only | Personal FTP server | ||
Windows only | Supports all version of Windows, including XP/Vista/Seven and Server 2003/2008 | ||
proprietary, free for personal use | Windows only | FTP, FTPS, SFTP, IPv6, SOAP-based web services API, Windows Active Directory / LDAP authentication, HTTP / HTTPS remote administration, public key and client certificate authentication | |
Mac OS X, Windows, Linux, *BSD, Solaris, etc | FTP, FTPS, SFTP, SCP, HTTP, HTTPS, WebDAV and WebDAV over SSL, AS2, AS3, Plugin API, Windows Active Directory / LDAP authentication, SQL authentication, GUI remote administration, Events / Alerts, Protocol Conversion (incoming FTP/FTPS/SFTP/HTTP/HTTPS protocols converted to a back end FTP/SFTP server.), SSH Tunneling, HTTP(S) Tunneling, CrushTask | ||
Microsoft Windows/Windows | FTP, FTPS, SFTP, HTTP, HTTPS, WebDAV WebDAV over SSL, AS2/AS3 and Impulse (Ad Hoc) Secure Managed File Transfer. Outgoing client connections FTP, SFTP and SCP | ||
open source, free software | Windows XP/Vista/7 | ||
open source, free software | Windows NT based | ||
Windows, Linux, Solaris, AIX, Linux Z/OS and Mac OS X | FTP, FTPS, SFTP, HTTP, HTTPS, WebDAV. event triggers. Java-based. | ||
i5/OS, Linux, RHEL (RedHat), SLES (SUSE), BSD, Mac OS X, Windows, AIX, Unix, HP-UX, Windows and SQL Server | FTP, FTPS, SFTP, HTTP, HTTPS - File transfer server with Web portal and file trigger capabilities. | ||
Windows only | Included in IIS 7 onwards | ||
Linux based | FTP/NAS server | ||
Linux, *BSD, Mac OS X, Windows (experimental) | |||
proprietary | Windows only | FTP, SSL | |
proprietary, commercial | Mac OS X (Intel/PPC) | Support for FTP, SFTP, HTTP, HTTPS, WebDAV, SSL, customizable web interface, remote web administration, remote application administration, web-based file transfer client, e-mail notifications, drop-ship files to e-mail address, deep linking download | |
proprietary, commercial | Windows | Support for FTP, FTPS, SFTP, HTTP, HTTPS listeners, Windows Active Directory integration, ODBC user/group storage, custom event triggers, remote browser-based administration, web-based file transfer client | |
proprietary, Free Personal Edition | Windows (All Editions) | Secure FTP Server that also supports Secure Shell Access and Web browser based secure file transfer. Protocols supported include FTP, FTPS, SFTP, HTTP, HTTPS, Telnet, and Secure Shell. Features include remote browser based administration, server event triggers and scripting, and authentication using Windows, ODBC, or Active Directory. Certified for Windows Vista. | |
open source, free software | Windows 9X/2000/XP/2003 | One of the original FTP servers made for the windows platform and still available. | |
Windows, Mac OS X, Linux, Solaris | Powerful FTP Server with excellent web interface. Supports XCRC. | ||
proprietary, Free for personal use | Windows only | Remote administration, support for SSL, FTPS and SFTP, Virtual file system, scripting, multi-threading... and much more. Paid extensions available to add functionality (e.g., Windows/Active Directory-Integrated authentication and event based scripting of internal and external scripts). |
基于终端的应用
名称 | 授权协议 | 支持的平台 | 相关细节 |
|---|---|---|---|
Mac OS X, Windows, Linux, *BSD, Solaris, etc | FTP, FTPS, SFTP, SCP, HTTP, HTTPS, WebDAV and WebDAV over SSL, AS2, AS3, Plugin API, Windows Active Directory / LDAP authentication, SQL authentication, GUI remote administration, Events / Alerts, Protocol Conversion (incoming FTP/FTPS/SFTP/HTTP/HTTPS protocols converted to a back end FTP/SFTP server.), SSH Tunneling, HTTP(S) Tunneling, CrushTask, Headless (A separate GUI machine can connect and control the server, or you can edit XML files directly.) | ||
Linux, BSD, Mac OS X | This server has numerous features making many complex and complicated setups possible. Some of the most important are: virtual users and groups, private paths, bandwidth throttling, upload/download ratio support, on the fly CRC calculating of files being uploaded, script support on almost all commands and operations, online user management, built-in statistics viewable using site commands, FTPS and ACL support. | ||
Linux, BSD, Unix, AIX, i5/OS, HP-UX | Enterprise Level file transfer with Web portal and file trigger capabilities. | ||
open-source | Linux, BSD, Mac OS X, Cygwin, and more | ||
open-source | Linux, BSD, and more | ||
open-source | Linux, BSD, Mac OS X, and more | default FTP daemon in many linux distributions[citation needed] | |
open source, BSD License | Windows only | ||
vsftpd (Very Secure FTP Daemon) | open-source | Linux, BSD, and more | default FTP daemon in Ubuntu, CentOS, Fedora, NimbleX and RHEL |
open-source | Linux, BSD, Solaris, Mac OS X and more | Main website seems offline, but continues development in the newer CC series |
开发库
名称 | 授权协议 | 开发语言 | 支持的平台 | 相关细节 |
|---|---|---|---|---|
Python | Platform independent | A high-level portable library to easily write asynchronous FTP servers with Python. It is currently the most complete RFC-959 FTP server implementation available for Python. |