Apache FtpServer is an open source and 100% pure Java FTP server, designed to be a complete and portable FTP server engine solution based on currently available open protocols.
FtpServer can be run standalone as a Unix/Linux daemon or Windows service, or embedded into a Java application. FtpServer also provides 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.
Here are some key features of "Apache FtpServer":
· 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).
What's New in This Release: [ read full changelog ]
· [FTPSERVER-336] - BaseUser class from ftpserver-core bundle can't be used in other bundles in an OSGi environment
· [FTPSERVER-340] - DefaultFtpServer throws NPE on restart and lack documentation on restart not being supported
· [FTPSERVER-342] - Incorrect reply codes from PORT and EPRT commands
· [FTPSERVER-345] - Update the replies of MD5 and MMD5 commands to include the file path in double quotes when there are spaces in the path
· [FTPSERVER-347] - Multiline replies does not handle lines starting with numbers
· [FTPSERVER-348] - MKD command on linux checks for path separator before passing to filesystemview
· [FTPSERVER-341] - Handling invalid port number from client
· [FTPSERVER-353] - Upgrade to MINA 2.0.0-RC1