The Apache FtpServer is a 100% Pure Java FTP server. It's designed to be a complete and portable FTP server engine solution based on currently available open protocols. FtpServer can be run standalone as a Windows service or Unix/Linux daemon, or embedded into a Java application. We also provide support for integration within Spring applications and provide our releases as OSGi bundles.
The default network support is based on Apache MINA, a high performance asynchronous IO library. Using MINA, FtpServer can scale to a large number of concurrent users.
It is also an FTP application platform. We have developed a Java API to let you write Java code to process FTP event notifications that we call the Ftplet API. Apache FtpServer provides an implementation of an FTP server to support this API.
* 100% pure Java, free, open source resumable FTP server
* Multi platform support and multithreaded design.
* User virtual directory, write permission, idle time-out and upload/download bandwidth limitation support.
* Anonymous login support.
* Both upload and download files are resumable.
* Handles both ASCII and binary data transfers.
* IP restriction support to ban IPs.
* Database and file can be used to store user data.
* All the FTP messages are customizable.
* Implicit/explicit SSL/TLS support.
* MDTM support - your users can change the date-time stamp of files.
* "MODE Z" support for FASTER data upload/download.
* Custom user manager, IP restrictor, Logger can be added easily.
* User event notifications can be added (Ftplet).