01 February 2012

SysAdmins: Help finding a suitable FTP server

For the last couple years I've been responsible with the upkeep of our company's internal infrastructure on top of my primary software engineering responsibility. This responsibility not only includes hardware maintenance, but also the software services our infrastructure provides to my coworkers and customers. One of those services is our primary digital software distribution platform using the antiquated FTP protocol. Unfortunately, this service is hosted on an old and dying server and we are now in the process of moving services off that server and onto something new and more resilient.
Currently we use a commercial FTP solution for Windows, but I would prefer to deploy the new FTP server on something other than Windows - Linux. However, what seemed like a reasonable set of requirements for FTP servers appears to be in the range of other cost-prohibitive commercial FTP packages. Here are the features that I'm trying to find:
  1. User accounts stored as LDAP accounts for employees and accounts for customers stored in a database,
  2. The ability to specify home directories for all types of users that the user can upload to, and
  3. Have the ability to have a virtual directory (e.g. public) for all types of users, which may or may not allow the user to upload to.
I imagined a FTP server package utilizing Apache-like configuration files would not be too hard to find, where I can have virtual users accounts like I can have virtual sites, and virtual directories with a configurable authentication method, but I have yet to find something that will fit the bill.
So, I need your help, fellow SysAdmins - does an FTP server exist with the things that I want, or am I just dreaming and will need to roll it myself?
Bonus:
I would also like the storage backend to be on a file server separate from the FTP server's VM, so I was thinking about mounting the root of the FTP data from a share on our file server. So, do you foresee any major issues with that type of setup?

No comments: