Назад | Перейти на главную страницу

Предоставление системы загрузки файлов для нескольких (возможно, неизвестных) людей

Мне нужно предоставить доступ нескольким людям для загрузки некоторых больших (видео) файлов на управляемый мной сервер. Для себя я бы использовал scp но поскольку они не я, я не хочу давать им полную ssh(/scp) доступ к серверу только для этого, поскольку я не обязательно знаю всех людей, и это будет считаться плюсом, если у пользователей не будет доступа к файлам друг друга.

Каким будет лучший и самый безопасный способ загрузки на сервер? Какие изменения это приведет к любым существующим правилам межсетевого экрана (в основном разрешены только порты 22 и 80/443, но с установленным QoS)?

На сервере работает Ubuntu 9.04. Клиенты варьируются от Linux до Mac OS X и до различных версий Windows.

Вы могли бы использовать vsftp (очень безопасный и быстрый ftp-сервер) и настройте "безопасный FTP Dropbox" соответствующие параметры конфигурации:

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

Вы также можете «обезопасить» его, используя пароли электронной почты:

secure_email_list_enable=YES

Добавьте электронные письма из белого списка в /etc/vsftpd.email_passwords

Ну и несколько вариантов:

  1. Просто дайте каждому пользователю свой аккаунт. Плюсы: пользователям необходимо пройти аутентификацию, чтобы вы знали, кто что загрузил; произвольные люди не могут злоупотреблять вашей загрузкой; люди могут управлять своими собственными файлами, но никакими другими. Минусы: настройка учетных записей и паролей может быть непрактичной, если это для многих людей.
  2. Настройте FTP-сервер только для записи, как описано в ответе rkthkr. Плюсы: без проблем с добавлением новых пользователей; Против: сложно сказать, кто что загрузил
  3. Настройте SFTP-сервер с учетной записью chroot и предоставьте эту учетную запись всем пользователям. Pro: блокирует анонимных пользователей, и нет необходимости создавать отдельные учетные записи. Против: люди могут читать / удалять файлы друг друга. Чтобы исправить это, вы можете настроить сценарий, который перемещает загруженные файлы из каталога загрузки в место, недоступное для SFTP.