1

I need to give access to a few people to upload some large (video) files to a server i manage. For myself, I'd use scp but as they are not me, I don't want to give them full ssh(/scp) access to the server just for that as I don't necessarily know all of the people and it would be counted as a plus if the users didn't have access to each other's files.

What would be the best and most secure way to provide uploads to the server? What kind of modifications would this cause to any existing firewall rules (basically allowing only ports 22 and 80/443 but with QoS in place)?

The server is running Ubuntu 9.04. Clients range from Linux through Mac OS X to various versions of Windows.

2 Answers 2

3

You could use vsftp (very secure and fast ftp-server) and setup a "secure FTP Dropbox" the relevant config parameters are:

local_enable=YES 
write_enable=YES 
nopriv_user=ftp
anonymous_enable=YES 
anon_upload_enable=YES
chown_uploads=YES 
chown_username=inftpadm  
ftp_username=inftpadm
local_umask=002 
anon_umask=007 
file_open_mode=0666
dirlist_enable=NO

You could also "secure" it more by using email passwords:

secure_email_list_enable=YES

Add "white listed" emails in /etc/vsftpd.email_passwords

1

Well, some options:

  1. Just give each user their own acccount. Pros: Users need to authenticate, so you know who uploaded what; arbitrary people can't abuse your upload; people can manage their own files, but no one else's. Cons: Setting up accounts and passwords might be unpractical if it's for many people.
  2. Set up a write-only FTP server, like rkthkr's answer describes. Pro: No hassle adding new users; Con: Hard to tell who uploaded what
  3. Configure SFTP server with a chroot account, and give that account to all users. Pro: Blocks anonymous users, and no need to setup seperate accounts. Con: People can then read/delete each other's files. To remedy this, you could set up a script that moves uploaded files out of the upload dir to somewhere inaccessible by SFTP.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .