The VSFTP daemon comes preconfigured for anonymous FTP only. And, the default timeouts don't allow much time for thinking about what you want to send/receive. If you're like us, you want to hack the configuration file (/etc/vsftpd.conf) and set the following:
local_enable=YES write_enable=YES local_umask=022 pasv_promiscuous=YES # if you want PASV to actually work idle_session_timeout=7200 # if you want a couple of hours timeout