With ftp you have a server (that runs on a server) and a client (that runs on your PC). And these comminicate via some very basic and simple commands. One of the many sites that document these commands is http://www.nsftools.com/tips/MSFTP.htm for example. You can try them (most, if not all, will be supported, I think) in the command line ftp-program that comes with Windows (or with any Linux version).
So all you've got to do:
1. Setup and configure any standard ftp-server on the server of your choice (you choose both the hardware and the OS). Of course, Linux is the usual choice, but any Windows server version should work also (but needs better security).
2. Program the client so that it does what you want it to do and no more. If you don't want the user to see files on the site, you don't implement the dir on the client GUI, for example. If you don't want him to know about the password, you put that hardcoded in your program. It's all up to you, as programmer of the client. If you want it to run from Excel, write it in VBA. If you only want it to run on an iPhone, make it an app and sell it via Apples app store.
Kees

Chowhound
Comic Vine
GameFAQs
GameSpot
Giant Bomb
TechRepublic