ProFTPd and www-data group

What I'm trying to do is create a ftp user that can update and modify files in an apache2 v2.4 (with www-data) web directory.

I have a single user: UserA (names changed to protect the guilty) The folder is /var/www/vhosts; chowned to www-data:www-data UserA has been addded to the www-data group. The UserA's home directory is set to /var/www/vhosts

I have ProFTPd setup and running. UserA connects fine.

The problem is ownership of the folders/files. all files are set to 644 as normal all folders are set to 755.

since UserA is not the owner, it falls under the group policies and files cannot be added, deleted, or modified because of the limitations.

Is there any way to masquerade UserA as www-data so they can perform the job?

Am I thinking of this the right way? is there another way to do it? Thanks The user connects via FTP to the web folder

0
задан 1 November 2018 в 03:25
1 ответ

Если я правильно понял вопрос, вы хотите использовать FTP на своем веб-сервере и загружать файлы в корневой каталог. Владелец и группа файлов (и каталогов?): www-data: www-data .

Что может происходить частично (с тех пор, как я использовал ProFTP), это маска umask пользователя A настроен в ProFTP с другой umask , чем то, что использует оболочка. Это может затруднить поиск и устранение неисправностей.

Я бы попробовал следующее:

  • добавить userA в группу www-data (как вы это сделали)

  • назначить режим 0775 в каталог vhosts (например: chmod 0775 )

  • применить SGID (например: chmod g + w + s vhosts ) на vhosts , поэтому к любым файлам там применены разрешения группы

Это должно выполнить:

  • userA загружает файл, который попадает в vhosts , принадлежащий userA , но с www-data групповым владением

  • , поскольку в каталоге vhosts не установлен липкий бит (установленный выше на 0775 ) ни один пользователь в ] www-data группа с доступом для групповой записи в vhosts может удалить / изменить файл

ПРИМЕЧАНИЕ : обратите особое внимание на apparmor и, возможно, ] SElinux . Возможно, вам потребуется настроить конфигурацию этих утилит (если они установлены), чтобы разрешить веб-серверу или ProtFTP писать туда.

ПРИМЕЧАНИЕ : Рекомендуемую безопасную альтернативу FTP можно найти в WinSCP / SFTP. Создав пару ключей OpenSSH, вы можете поместить свой открытый ключ в домашний каталог пользователя www-data и «замаскироваться» под веб-сервер при входе в систему через WinSCP. Это позволяет использовать шифрованную связь, более безопасную аутентификацию и меньше возни с изменением разрешений.

1
ответ дан 4 December 2019 в 15:49

Теги

Похожие вопросы