Proftpd. Загрузка файлов только определенного формата

Про софт и железки.
Ответить
Сообщение
Автор
Аватара пользователя
__A
Капитан
Капитан
Сообщения: 392
Зарегистрирован: 03.02.2009
Благодарил (а): 38 раз
Поблагодарили: 113 раз

#1 Сообщение 19.02.2015, 23:03

Добрый вечер!
Подскажите пожалуйста, как разрешить\запретить пользователю загружать файлы определенного формата, допустим *.7z ?
В конфиге я что-то не нашел подобного. В vsftpd есть опция deny_file, но, честно я его не ставил, все время пользовался proftpd.
Как можно решить? .ftpaccess?

MOZGIII
Разработчик
Разработчик
Сообщения: 910
Зарегистрирован: 09.01.2009
Откуда: Переезжаю в /dev/null
Благодарил (а): 7 раз
Поблагодарили: 65 раз
Контактная информация:

#2 Сообщение 19.02.2015, 23:27

BearDED
Если под форматом вы понимаете только лишь имя (расширение) файла, то у меня для вас плохие новости... А именно: можно и не фильтровать, смысла в этом никакого. Что у вас за задача, если брать более общо?

Аватара пользователя
__A
Капитан
Капитан
Сообщения: 392
Зарегистрирован: 03.02.2009
Благодарил (а): 38 раз
Поблагодарили: 113 раз

#3 Сообщение 20.02.2015, 00:02

Да, расширение. Стоит апач и профтпд, используется как фастдл для кс, так сказать. Не знаю как в плане безопасности, но хотелось хотя бы для порядка) Пользователю по идее нужно дать доступ только на загрузку .bz2
Пустяки, но хотелось бы знать)

MOZGIII
Разработчик
Разработчик
Сообщения: 910
Зарегистрирован: 09.01.2009
Откуда: Переезжаю в /dev/null
Благодарил (а): 7 раз
Поблагодарили: 65 раз
Контактная информация:

#4 Сообщение 20.02.2015, 01:55

BearDED
Я бы посоветовал сделать следующее, как минимум: выкинуть apache и proftpd, заменив это всё nginx + sftpd. В nginx разрешить отдачу только файлов *.bz2, не забыв при этом проверить/зафорсить mime-тип - чтобы люди не пользовались сервером как хостингом общего назначения (не грузили html/js). Просто, и не нужны ограничения на загрузку.
Но такое решение - не самое лучшее. В идеале я бы, конечно, организовал специализированный загрузчик, вместо sftp, который бы по-настоящему проверял, что файл - это fastdl-совместимый bzip2 архив, по содержимому, плюс, возможно, антивирусом сканил.

Аватара пользователя
__A
Капитан
Капитан
Сообщения: 392
Зарегистрирован: 03.02.2009
Благодарил (а): 38 раз
Поблагодарили: 113 раз

#5 Сообщение 20.02.2015, 09:01

Спасибо за совет. Сегодня попробую. Но загрузчик я думаю будет не всегда удобен как фтп клиент,
если я правильно его представляю)
Вообще директория будет общая для всех, пользователи будут только добавлять файлы, без изменения существующих.

MOZGIII
Разработчик
Разработчик
Сообщения: 910
Зарегистрирован: 09.01.2009
Откуда: Переезжаю в /dev/null
Благодарил (а): 7 раз
Поблагодарили: 65 раз
Контактная информация:

#6 Сообщение 21.02.2015, 05:28

BearDED
Ну, я под загрузчиком понимаю некую простенькую программку-сервер, на Go/Python/Node.js/C/C++ или любом другом подходящем языке (то есть не на PHP к примеру). К ней также какой-то клиент, в соответствии с нуждами, проще всего - в виде веб-приложения.

Да, если есть возможность - не используйте FTP. Это очень древний и не очень хороший протокол. Вместо него, используйте лучше SFTP/HTTP/Rsync.

Ответить