Вопрос о доступе каталога Linux

У меня есть система Linux с установленным апачем, и я храню веб-файлы в/home/username/www/sitename/htdocs. Чтобы это работало, мой/home/username прочитал и выполняет полномочия для всех. Я знаю, что это - плохая идея, но я - единственный пользователь в системе, так... я действительно не забочусь, и я не знал бы, как еще сделать это. Но факт, я должен создать другого пользователя. Проблема с этим, очевидно, состоит в том, что у нового пользователя есть доступ к файлам старого пользователя. Есть ли какой-либо способ, которым я мог только позволить апачскому www-пользователю-данных и моему собственному пользователю к доступу/home/username? Вот то, что я попробовал:

i created a group webusers
i added my username and www-data to webusers
i removed rx permissions for everyone on /home/username
rx permissions still remain for the group on /home/username

Таким образом, разве www-данные не должны мочь получить доступ к/home/username теперь? Это находится в той же группе как мой пользователь. Или это не настолько просто? Я читал существуют основные и вторичные группы, но я действительно не понял там...

2
задан 15.08.2010, 18:19

3 ответа

Вы должны chgrp webusers на файлах, к которым Вы хотите, чтобы члены группы смогли получить доступ.

1
ответ дан 12.12.2019, 07:36

Если приложение должно получить доступ к объекту файловой системы, файлу или каталогу, оно должно иметь (кроме требуемых прав на самом объекте), выполняют права на всех родительских каталогах. Это могло, однако, иметь, например, выполнить права, обеспеченные полномочиями группы на одном каталоге и полномочиями других на другом: нет никакого различия в том, как приложение получает свои права.

Как полномочия для /home вероятно, 755 (rwxr-xr-x), могло быть две возможных проблемы.

Во-первых, необходимо быть уверены, что Apache действительно работает как www-data, и во-вторых, после того, как Вы добавляете некоторого пользователя к группе, необходимо перезапустить все приложения, уже работающие как тот пользователь, потому что Linux не изучает /etc/passwd каждый раз это должно получить список группы, вместо этого это хранит список GID в структуре ядра.

Основные и вторичные группы только допустимы когда applicated пользователю. Пользователь может принадлежать любому количеству групп, но один из них выбран как основное устройство и присвоен недавно созданным файлам; другие используются только для управления правами доступа.

0
ответ дан 12.12.2019, 07:36

Каждый файл и каталог имеют ряд полномочий для владельца, группы и другого (все остальные).

Выполненный ls -l найти, каково это

Для изменения полномочий использовать chmod, для изменения владельца и группы использовать chown

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

  • Вы создаете группу (webusers в Вашем случае) и изменение владение файлов в /home/user1/www/sitename/htdocs кому: user1.webusers
  • Затем измените полномочия файлов к rw-rw---- и каталоги и cgi's к rwxrwx---
  • user2 (новый пользователь), не сможет получить доступ к файлам, если они не часть группы веб-пользователей
-2
ответ дан 12.12.2019, 07:36

Теги

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