1

У меня проблемы с правами и владельцем в системе fedora28 с apache-2.4 и joomla-3.9. Я хотел бы иметь возможность иметь только минимальное количество файлов, необходимых для владения apache, и чтобы пользователь ssh/sftp имел доступ для чтения и записи каждого файла в корне документа.

Я пытаюсь решить две проблемы:

  • Предоставить возможность пользователям ssh/sftp писать файлы в корне документа
  • Предоставьте apache только минимальные возможности, необходимые для записи / удаления файлов, не ограничивая при этом чтение

Проблема заключается в том, что при создании файлов с правами собственности 664 многие из таких расширений, как Akeeba Backup, жалуются, что файлы слишком расслаблены, и настаивают, что они должны быть 644.

Я загрузил mod_suexec и включил его с помощью "Suexec on" и настроил SuexecUserGroup на имя пользователя ssh/sftp и "apache":

SuexecUserGroup ftpuser apache

затем изменил владельца всех файлов и каталогов на ftpuser.apache, но это работает только тогда, когда файлы создаются или изменяются ftpuser.

Затем я проверил и установил право собственности на несколько конкретных файлов, к которым apache необходим доступ для чтения / записи для нормальной работы.

#!/bin/bash

PLACES='
administrator/backups
administrator/components
administrator/modules
administrator/templates
administrator/language
administrator/cache
cache
components
images
images/banners
images/stories
language
media
modules
templates
tmp
'
for i in $PLACES; do chown -R apache:apache $i; chmod g+w $i; done

chmod g+w tmp components language language/en-GB logs modules 
administrator/components administrator/language \
    administrator/language/en-GB

Даже после такой настройки suexec apache не может удалить файлы, принадлежащие ftpuser с разрешениями 644. Apache нужна способность писать больше, чем указано при обновлении или обновлении расширений.

Проблема в том, что сервер apache работает как пользователь apache, поэтому любые файлы, которые он записывает, должны принадлежать пользователю apache, при условии, что разрешения были 644 или 755.

Я подумал об использовании sgid, изменив разрешения всех каталогов на 2775, чтобы любые файлы, созданные пользователем apache, сохраняли владение группой apache и разрешения 664, но это не помогает с безопасностью и сохранением Akeeba Backup с 644 разрешениями. вопрос.

Что делают большинство поставщиков услуг, таких как SiteGround? Они просто меняют владение всем, чтобы стать пользователем, работающим под Apache, а затем дают всем пользователям sftp один и тот же UID?

Есть ли способ просто изменить владельца на apache.apache, добавить пользователя ssh/sftp в группу apache и установить все sgid?

0