Moftpd is a feature-rich FTP server with support for IPv6, TLS, SQL, and other advanced features.
The authentication system within moftpd is highly advanced, providing users with control over authentication methods. Aside from system users, it is possible to define additional users specified in the configuration file, with permissions available on both the directory and file level. These permissions can be configured on a user-by-user or group basis. Users can connect to various servers based on their IP addresses, and compliant clients can choose servers to connect to. The system also enables authentication based on user-provided certificates, restricting accounts to specific private keys. Currently, moftpd supports SQL, with MySQL being the lone supported database engine for specifying user permissions.
With its strong permission system, file and directory permissions can be specified individually, along with options such as selecting between real or faked chroot, and more. If utilizing the latter, it's possible to select specific symlinks out of the chroot to obtain access to other directories. Permissions on critical files can be limited and must be encrypted and/or signed during transfer. Additionally, file and directory permissions can be sourced from SQL.
Moftpd is fully compliant with the status quo of running FTP in various languages. As of now, only Swedish has been implemented, but more languages are straightforward to add. The system always runs in UTF-8, as per RFC guidelines, but file names and commands can be converted to different encodings using functions available.
Finally, the system boasts good documentation, including easy-to-navigate HTML documentation, available here on the homepage. For those who prefer text documents, that option is also available. The HTML code for the software's options is generated from an included XML source.
Version 1.2.3: N/A