Я установил vsftpd
и настроил SFTP.
У меня есть стандартный пользователь с именем, скажем, user1
со всеми разрешениями. Я не хочу сообщать пароль своему другу. Я только хочу, чтобы он имел доступ к определенному каталогу для загрузки файлов, чтобы сервер мог их запускать.
Расположение файла: / home / user1 / upload
Я создал пользователя без входа в оболочку с именем user1ftp
. Я изменил домашнее местоположение пользователя на / home / user1 / upload
, поэтому, когда он входит в систему, он напрямую входит в каталог загрузки. Он может загружать и удалять файлы в нем.
Проблема в том, что когда он загружает файл, сервер не может его запустить. Его права доступа к файлам: rw-r - r -
Мне нужно убедиться, что, когда он загружает файл, права доступа rwxrwxr-x
Эти пользователи являются членами та же группа.
Как я могу это сделать?
Функция, которую вы ищете, называется umask. Эта функция удаляет разрешения из набора разрешений.
Установка umask в ноль (0
) полностью его отключает. Если вы установите значение 2, это отключит только флаг "w" в конце разрешений. Согласно обсуждению (см. ниже), если вы сделаете это, vsftpd
сможет разрешить rwxrwxr-x
, чего вы пытаетесь добиться.
В конфигурационном файле vsftpd (возможно, /etc/vsftpd.conf
) есть две настройки.
local_umask
(та, которая вам нужна)anon_umask
(для анонимных пользователей)Дальнейшее чтение: