In a recent project I've found box.com to be a fairly good alternative. As with dropbox there is a managed package available from the AppExchange which provides many of the 'basic' integration requirements and box.com provides a well-documented API which can be used to develop additional integration features from salesforce.com or any web-connected system. One thing I would STROMGLY recommend though, whether using Dropbox, box.com, AWS or anything else, is to clarify the support level and determine whether it's adequate for the planned commercial usage. A provider may provide adequate or even excellent support for its own system but this does not necessarily mean they provide good (or even any) support for the AppExchange package.