Fork me on GitHub

Tired of confusing configuration files and security features you don’t need?

  • uftpd supports both FTP and TFTP
  • Has no confusing configuration file
  • Listens to port ftp/tcp and tftp/udp found in /etc/services, or custom port(s)
  • Serves files from the ftp user’s $HOME, as specified in /etc/passwd, or custom path
  • Can run from inetd or as a standalone daemon
  • Can run as root, with chroot and privsep, or as a regular user
  • Supports TFTP blocksize negotiation, RFC 2348

Basically, it just works!

See also the OpenHub page, the cool Fresh(code) page, or the (sadly) dormant Free(code) page.

Curious to know why uftpd exists? If you really are interested, read my rant for background and context :)

Disclaimer: uftpd supports both FTP and TFTP, but the latter is not safe to use on the Internet. FTP is safer and the uftpd implementation may even be secure. Some of the most common security best practises have been employed, while others have been avoided in an effort to keep uftpd user friendly. If you want something really secure, you should probably try vsftpd.