Как управлять разрешениями для папок Linux? - PullRequest
1 голос
/ 05 октября 2011

Я немного запутался с разрешениями Linux.Я настраиваю Git Central Repository, к которому пользователи получают доступ по SSH.Я использую ACL файловой системы ( link ) и обычные разрешения Linux.Я собираюсь сделать следующее:

  • Найти способ, которым только те пользователи, которых я хочу, смогут перечислить / прочитать / записать / выполнить каталог "/ var / github" (таким образом,что я назначаю группу пользователю, которому я хочу дать такие разрешения)
  • Пользователь "git" - единственный пользователь, который может создавать новые папки в "/ var / github"

Это можно сделать?Некоторые подсказки, как это сделать?

С наилучшими пожеланиями,

Ответы [ 3 ]

2 голосов
/ 05 октября 2011

chown git:git /var/github; chmod 750 !$

Теперь только группа git может читать папку, и только пользователь git может изменять ее.

1 голос
/ 05 октября 2011

Вы можете использовать списки контроля доступа для предоставления доступа нескольким группам. Вот пример сеанса (с использованием Ubuntu, но он должен быть таким же для CentOS), который дает доступ на чтение группы grp1 и доступ на чтение, запись и выполнение группы grp2:

$ touch foo
$ setfacl -m "g:grp1:r--,g:grp2:rwx" foo
$ getfacl foo
# file: foo
# owner: me
# group: me
user::rw-
group::r--
group:grp2:rwx
group:grp1:r--
mask::rwx
other::r--
1 голос
/ 05 октября 2011

Убедитесь, что наряду с пользователем "git" существует группа "git". Добавьте всех пользователей в группу, к которой вы предоставите доступ. Измените свойства владения вашего каталога на пользователя и группу git, а затем разрешение 750. Команды владения и режима следующие:

chown git:git /var/github
chmod 750 /var/github

Разрешение 750 позволяет пользователю делать практически все в папке, и только члены группы «git» читают и, возможно, выполняют в этой папке. Какие программы и команды вы используете для управления пользователями, зависит только от вас.

...