I can give you an upload script if you need it.
Just be sure you redirect all http traffic to https before prompting for a password.
Something like this for Apache
<VirtualHost *>
ServerAdmin
admin@dcphillips.net
DocumentRoot /var/www/unsecure/upload
ServerName upload.dcphillips.net
ErrorLog logs/error_log
CustomLog logs/access_log common
</VirtualHost>
<VirtualHost *:443>
Port 443
DocumentRoot "/var/www/upload"
ServerName upload.dcphillips.net
ServerAdmin
admin@dcphillips.net
ErrorLog logs/error_log
TransferLog logs/access_log
SSLEngine on
SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
SSLCertificateFile /etc/httpd/conf/ssl.crt/server.crt
SSLCertificateKeyFile /etc/httpd/conf/ssl.key/server.key
<Files ~ "\.(cgi|shtml|phtml|php3?)$">
SSLOptions +StdEnvVars
</Files>
<Directory /var/www/upload>
EnablePut On
Options +Indexes
AuthType Basic
AuthName Temporary
AuthUserFile /var/www/access/upload/.htpasswd
EnableDelete Off
umask 007
require valid-user
</Directory>
Your site for the http must redirect to https..
$ cat /var/www/unsecure/upload/index.php
<?php
header("Location:
https://upload.dcphillips.net/");
exit();
?>
Of course you can simply allow downloads if you want to.
The important thing to have is the login requirement and the use of https.
You caould get fancy with the interface if you want, the one shown will simply prompt for a login using a popup dialog.
Here is a simple upload page..
<HTML>
<HEAD>
<TITLE>Upload ...</TITLE>
</HEAD>
<BODY BGCOLOR="396DA5">
<P>
<FORM ENCTYPE="multipart/form-data" ACTION="/cgi-bin/upload.cgi" METHOD="POST">
<H3>Choose the files you want to upload from your computer.</H3>
<HR size=l>
<TABLE BORDER=0 WIDTH="500">
<TR>
<TD ALIGN=RIGHT>
File #1:
</TD>
<TD>
<INPUT TYPE="FILE" NAME="file-to-upload-01" SIZE="35">
</TD>
</TR>
<TR>
<TD ALIGN=RIGHT>
File #2:
</TD>
<TD>
<INPUT TYPE="FILE" NAME="file-to-upload-02" SIZE="35">
</TD>
</TR>
<TR>
<TD ALIGN=RIGHT>
File #3:
</TD>
<TD>
<INPUT TYPE="FILE" NAME="file-to-upload-03" SIZE="35">
</TD>
</TR>
<TR>
<TD ALIGN=RIGHT>
File #4:
</TD>
<TD>
<INPUT TYPE="FILE" NAME="file-to-upload-04" SIZE="35">
</TD>
</TR>
<TR>
<TD COLSPAN=2> <BR></TD>
</TR>
<TR>
<TD>
<INPUT TYPE="SUBMIT" VALUE="Upload">
<INPUT TYPE="RESET" VALUE="Reset">
</TD>
</TR>
</TABLE>
</FORM>
</BODY>
</HTML>