Права доступа к определенной папке

Я хочу иметь возможность разрешать пользователю только разрешения на чтение / запись для определенной папки, но не для каких-либо родительских папок

, например,

mywebsite

Могу получить доступ только к /var/www/html/mywebsite

И не /var/www/html/otherwebsite

Я пытался:

chown -R www-data /var/www/html
chown -R mywebsite:www-data /var/www/html/mywebsite
chmod -R 770 /var/www/html

Проблема, с которой я сталкиваюсь, заключается в том, что при входе в mywesbite У меня нет разрешения на запись в папку mywebsite или в любую другую папку по этому вопросу

Что я делаю не так?

2
задан 11 May 2015 в 02:29

2 ответа

Дать пользователю mywebsite разрешение чтения-записи в /var/www/html/mywebsite:

chown -R mywebsite /var/www/html/mywebsite 

, Который должен быть достаточным. Вам не придется изменить владельца группы или полномочия, потому что пользовательскому владельцу уже нужно дать полномочия чтения-записи.

, Если бы Вы хотели предоставить разрешение чтения-записи группы в той папке, скажем, группа my-group, Вам было бы нужно:

chgrp -R my-group /var/www/html/mywebsite 
chmod -R g+w /var/www/html/mywebsite

Важные примечания

  1. не Делают , устанавливает владение (или пользователь или группа) файлов в /var/www к www-data пользователь. Точка выполнения веб-сервера как www-data пользователь - то, что это непривилегированно учетная запись, не могущая изменить любые файлы. При установке некоторых файлов, которые будут принадлежать этому пользователю, Вы инвертируете те меры безопасности. Если Вы потребность Ваш веб-сервер, чтобы смочь изменить определенные файлы, только установите владение для тех конкретных файлов и бойтесь очень позволять прямое выполнение (например, через PHP) их. В целом никогда не устанавливайте его так, чтобы www-data мог изменить файлы.

  2. При выполнении рекурсивного chmod, часто лучше использовать буквы, чем числа, например, chmod -R g+w something, а не chmod -R 770 something. Это вызвано тем, что первый может изменить только разрешение, которое Вы хотите и оставляете другие. По умолчанию каталоги и файлы будут иметь отличающимся, "выполняют" полномочия - файлы будут иметь его прочь (например, 644) и каталоги на (например, 755), потому что это полномочия имеет другое значение для каталогов. Если Вы сделаете chmod -R 770 something затем, то регулярные файлы будут иметь, выполняют включенные полномочия. В целом это - хорошая идея только изменить то, в чем Вы нуждаетесь.

    Другая вещь отметить состоит в том, что 770 удалил бы читаемое миром разрешение, которое предотвратит веб-сервер (который работает как непривилегированный пользователь), способность считать его. В этом случае это также предотвращает пользователя mywebsite способность видеть /var/www/html/mywebsite каталог вообще, потому что Вы установили родительский каталог /var/www/html на 770.

5
ответ дан 11 May 2015 в 12:29
  • 1
    Сладкий, I' ll ожидают ОТЫ 13 обновлений, тогда. Спасибо pomsky. – Jesse 10 August 2016 в 07:30

Что я сделал на Ubuntu 16.04 (для моей будущей ссылки также):

sudo groupadd web-content                 # creates a new group 'web-content'
sudo usermod -a -G web-content myuser     # adds 'myuser' to the group
sudo usermod -a -G web-content www-data   # adds 'www-data' to the group
sudo chown -R myuser:web-content /var/www/html          # changes owner to 'myuser' and 'web-content' group
sudo find /var/www/html -type f -exec chmod 640 {} \;   # applies rw for myuser and r permissions to all files
sudo find /var/www/html -type d -exec chmod 750 {} \;   # applies rwx for myuser and rx permissions to all directories
sudo systemctl restart apache2.service    # restarts the apache web service

сообщите мне, не ли это безопасно или разумно.

(Примечание. Я просто хотел добавить это как дополнительный комментарий к моему предыдущему комментарию, но он потерял форматирование строк кода, когда я сделал это)

1
ответ дан 11 May 2015 в 12:29
  • 1
    Это указывает, что у меня есть KDE Plasma v5.5.5, и я действительно регулярно устанавливаю обновления. – Enkouyami 11 August 2016 в 05:58

Другие вопросы по тегам:

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