Internet-Based Software Distribution

We are currently distributing installers for our basic Windows software via the apache web server on an Ubuntu server using apache authentication. When we initially started doing this, we only had 3 projects to distribute and as such, 3 htpasswd files to manage. Since then, we have grown and are now distributing 8 projects, as well as several specific sponsor options for each one. In addition, we started distributing videos to potential research sponsors along with the software, which is quite large. This has become a huge burden to manage all the htpasswd files. So my question is, what's the best way to provide password protected access to large sets of files on the web? I think CMS might be appropriate in this case, but I am interested in other ideas,that people can have. My special requirements:

  • Running on Apache / Linux. Specifically Ubuntu 6.06 / Apache2
  • Free or relatively cheap, research does not involve expensive enterprise software.
  • The ability to easily create users and set an expiration date for your account.
  • Ability to create logical collections of files and restrict user access to those specific collections
  • The ability to process relatively large files (over a hundred megabytes, although this is rare). Also, there should be an easy way to add files outside of the web interface, as downloading a 300MB video would not be feasible over the Internet. A command line client would probably be better.

Any software suggestions that can handle the above requirements are greatly appreciated.

0


source to share


3 answers


Configure apache to use LDAP for authentication. You can then use a pre-existing LDAP interface or roll your own to manage access rights and account expiration.

With LDAP, you can have a group for each project so that users can access multiple projects while in multiple groups.



Some information about configuring Apache for LDAP can be found here .

The directory can be managed for example by phpLDAPadmin or the old but good LDAP Browser / Editor if you prefer an offline java application.

+1


source


I might consider Plone with an LDAP plugin.



As a side note, I also suggest upgrading to a later version of Ubuntu LTS, but that is not necessary :)

0


source


It might be worth considering Amazon S3. It is not free, but it is very cheap.

You cannot have users, but you can create individually signed URLs for each file - URLs that allow access for a certain predefined period of time.

So instead of logging users in, worrying about distributing passwords and their expiration after a while, just generate URLs for the files to be split and provide the URLs to your users.

And there are tons of clients to put files on S3 - if you want a command line interface, just set it as filesystem and "cp" files there.

0


source







All Articles