Я установил и настроил proftp на Debian, используя этот как и это прекрасно работает.
Фактически, изменения в конфигурации:
[...]
UseIPv6 off
[...]
<Global>
RootLogin off
RequireValidShell off
</Global>
DefaultRoot ~
<Limit LOGIN>
DenyGroup !ftpgroup
</Limit>
и разрешение каталога пользователя
addgroup ftpgroup
adduser otropload -shell /bin/false -home /ftpshare
chmod -R 1777 /ftpshare/
но я бы хотел внести одно изменение:
Я хотел бы, чтобы этот пользователь был пользователем только для загрузки, который не видит файлы, но может загружать новые файлы. Я предполагаю, что это возможно, изменив разрешения, но я не знаю, какие именно.
Итак, мой вопрос:
Как я могу настроить proftpd или разрешения домашнего каталога пользователей так, чтобы пользователь мог загружать только на ftp-сервер и не видел существующие файлы?
Чтобы не было возможности "видеть" файлы (предполагая что это просто означает блокировку списков каталогов), может работать следующая конфигурация:
<IfUser otropload>
# Block directory listing commands
<Limit LIST NLST MLSD MLST>
DenyAll
</Limit>
</IfUser>
Обратите внимание, что для этого требуется, чтобы ваш proftpd
использовать mod_ifsession
модуль.
Теперь выше мощь сделать различных FTP-клиентов очень недовольными, поскольку они часто загружают файл, а затем запрашивают список каталогов, чтобы убедиться, что файл был загружен. В основном это происходит с FTP-клиентами с графическим интерфейсом.
Надеюсь это поможет!