Following different tutorials, I was able to successfully implement a non-SSL FTP server without much difficulty. However, the SSL portion proved difficult. There were no debug or error messages that I could read, and searches for the Filezillas generic message of “Unexpected TLS message” did not help… until I found this blog and realized that the unexpected message was the error message from the server (that’s a bad place to put debugging messages!). Following the blog’s instructions, I then proceeded to sniff the network and was able to quickly find that a single line of my configuration file was invalid (during runtime and not on starting the program, adding further to the difficulty of debugging).
An additional problem between VSFTPD and Filezilla is that Filezilla does not accept low encryption method (at least in the newest versions). This is not mentioned in either debug files and instead kills the connection with “TLS error”. Setting the VSFTPD encryption method setting to HIGH fixed the problem.