I figure I'll update this thread with a guide on how to setup a ftp with vsftpd on Ubuntu/Mint type distros.
First install vsftpd.
Code:
sudo apt-get install vsftpd
Now we need to edit the vsftpd.conf file. Hopefully you have gedit installed, otherwise install it.
Code:
sudo gedit /etc/vsftpd.conf
Now remove # for these lines.
Code:
write_enable=YES
local_umask=022
chroot_local_user=YES
Add these lines at the very end. Doesn't matter where you put them, so long as you can find them again if needed. Hit save and close when you're done.
Code:
allow_writeable_chroot=YES
pasv_enable=Yes
pasv_min_port=40000
pasv_max_port=40100
pasv_promiscuous=YES
The router must port forward port 21 and ports 40000 to 40100. Yes that's 100 ports that need to be forwarded, so find the port range ability of your router, or try entering 40000-40100. This is something you'll have to figure out if you want to access your ftp outside your home. Now you'll want to give a user rights to ftp. You can do it the UI method with 'Users and Groups'.
Or the Terminal method.
Code:
sudo adduser user ftp
sudo adduser user ftpaccess
If you want a specific person to have access to their own ftp, you can make your own ftp user. Cause when you access your login user name like BOB for example, you have access to the home folder. So if you share your ftp with friends and don't want them finding your porn collection and bank info, make a new ftp user. They will have a empty home folder.
Code:
sudo useradd --home /home/ftp --group ftp-users --shell /bin/dummy ftpuser
sudo passwd ftpuser
That should be it. Find your IP and try to login with your favorite ftp client. I prefer FireFTP for Firefox. I would recommend a DNS. You can also try accessing your FTP from Android with AndFTP. It's a great way to find out if your FTP can be accessed outside from WAN.