У меня есть сервер Ubuntu 12.04, и я установил службу VSFTPD для FTP.
Я пытаюсь создать пользователя FTP, который имеет доступ только к каталогу / var / www / и ко всем разрешениям для подкаталогов.
FTPUser не должен иметь доступа ни к каким каталогам и файлам корневого / верхнего уровня.
Пока я сделал следующие вещи.
После всего этого My FTPuser1 по-прежнему может обращаться к каталогам и файлам верхнего уровня. .
Пожалуйста, дайте мне знать, как я могу заблокировать доступ на верхнем уровне?
Как владелец/корень, выполнитесь:
chmod 700 -r [directory]
700
средства, что только у владельца есть полный доступ, -r
средства применить правила к подпапкам. Вы также захотите:
chown user:user -r [/path/to/dir]
chown
управляйте изменяет владельца. user:
имя пользователя к этому, станет владельцем;:user
группа.
(Не уверенный, почему вопрос с 2014 открывается снова на домашней странице, но так или иначе :D)
Это, вероятно, не, хорошая идея смешать с полными полномочиями остальной части файловой системы, как он была предложена в другом ответе. Лучший путь состоял бы в том, чтобы использовать функцию, названную "chroot".
"chroot", короткий для "корня изменения", просто делает это: Это изменяет корень дерева каталогов (FTP), пользователь может получить доступ, к какому администратор хочет, чтобы это было. Иногда та же функция упоминается как "заключение в тюрьму" пользователя в их корневом каталоге.
Большинство FTP-серверов поддерживает chroot (за исключением некоторых очень маленьких, базовых). Я не действительно знаком с vsftpd, но согласно это практическое руководство на Кибергороде , необходимо установить директиву chroot_local_user
конфигурации на 1
.