Tuesday, January 26, 2010

FTP Server with Ubuntu 9.10 Server

I still use FTP. Mostly because all the other methods I looked at (WebDAV, SFTP, and Web Based file server) were all missing one thing or another that I feel I need. I have the following types of needs:
  • I need a ftp location that a user can upload into, but not download or see. (Drop box)
  • I need someone else with the ability to download and delete files from that dropbox
  • I need an group that can read/write one particular folder (shared workspace)
  • Another group that can access that same shared workspace while also giving access to another folder with read only permissions (Library).
  • I need a group that can access the same Library folder mentioned above. But not access the shared workspace.
I had other types of configurations which I decided I could drop from the requirements for now just to make my life easier.
Other requirements:
  • Minimal configuring, management, trouble shooting for individual users
  • per user bandwidth control, 
  • nat support, 
  • simple client instructions/requirements, 
  • and for most of the shared files to come from a SMB NAS.
I have used a windows FTP server for over 5 years to achieve all of the above. The windows FTP server I preferred was called bulletproof or G6 depending on how far you go back. It is actually an excellent server that I recommend to anyone in the windows world. Here are some of the features that I used:
  • Virtual Users (A user list managed by the FTP server instead of the OS)
  • Virtual Groups
  • Per User/Group bandwidth throttling
  • Easy user setup by just picking their group.
  • Chrooted Users (Keep the user from getting to the rest of your file system)
  • Virtual Links and Link traversing
  • Virtual Folder Permission control
  • Nearly all folders on a network NAS device (Buffalo Terrastations)
  • NAT Traversal/Passive FTP
  • Non Standard Port
  • etc.
In the next FTP posting I'm going to show how I came close enough to these features in Ubuntu 9.10 Server to eliminate another windows machine using Pure-FTP. Surprisingly there wasn't just one hurdle for accomplishing this, but nearly every feature had to be painfully worked out. On the plus side I have more features than I had before and I have better options to manage the server.


No comments:

Post a Comment