Linux-그룹이 폴더에 대한 권한을 갖도록 파일 시스템 ACL을 얻는 방법


0

이 작업을 수행하는 방법에 약간 혼란 스럽습니다.

ACL이 작동 중이며 두 개의 goup을 작성해야합니다.

  • github-total : 해당 그룹의 사용자에게 "/ var / git"폴더에 대한 읽기 / 쓰기 / 실행 권한이있는 그룹입니다.
  • github-read : 해당 그룹의 사용자에게 "/ var / git"폴더에 대한 읽기 권한이있는 그룹.

"github-total"그룹의 경우 다음을 수행했습니다.

"git"사용자로서 :

$ cd /var
$ mkdir github
$ chmod 770 github
$ ls -al
drwxrwx---+  3 git git   4096 Oct  4 21:48 github


# useradd andre -m
# passwd andre
# groupadd github-total
# usermod -a -G github-total andre
# id andre
uid=500(andre) gid=500(andre) groups=500(andre),502(github-total) context=user_u:system_r:unconfined_t
# cd /var
# setfacl -R -m group:github-total:rwx github
# setfacl -R -d -m group:github-total:rwx github
# getfacl github
file: github
owner: git
group: git
user::rwx
user:git:rwx
group::rwx
group:git:rwx
group:github-total:rwx
mask::rwx
other::---
default:user::rwx
default:group::rwx
default:group:github-total:rwx
default:mask::rwx
default:other::---

불행히도 이것은 "andre"사용자와 함께 작동하지 않습니다. "/ var / github"를 나열 할 수 없습니다

$ cd /var/github
bash: cd: /var/github: Permission denied

ACL에 그룹을 추가하여이 폴더를 나열하려면 어떻게해야합니까?

친애하는,

추신 : 영어로 죄송합니다 ...

업데이트 1 :

사용자 "andre"와 함께 인수없이 id 를 사용하면 다음과 같은 결과를 얻었습니다.

$ id
uid=500(andre) gid=500(andre) groups=500(andre) context=user_u:system_r:unconfined_t

"github-total"그룹은 "andre"사용자의 그룹으로 포함되지 않습니다.

만약 내가한다면:

$ id andre
uid=500(andre) gid=500(andre) groups=500(andre),502(github-total) context=user_u:system_r:unconfined_t

이것은 무엇을 의미 하는가?


답변:


0

ACL이 정확하므로 문제가되지 않습니다. 안드레의 그룹 멤버쉽에 문제가 있다고 생각합니다.

사용자가 로그인 한 상태에서 사용자를 그룹에 추가하면 사용자가 로그 아웃했다가 다시 로그인 할 때까지 그룹 멤버쉽이 적용되지 않습니다. 로그 아웃했다가 다시 로그인하여 작동하는지 확인하십시오.

그런데 "github-read"그룹을 만들 때 그룹은 읽기 권한뿐만 아니라 디렉토리에 대한 읽기 및 실행 권한이 모두 필요합니다. 당신이 이미 그것을 알고 있는지는 모르겠지만 어쨌든 당신에게 말하는 것이 최선이라고 생각했습니다.


0

SELinux의 모드는 무엇입니까? "강제 실행"을 실행중인 경우 생성 한 폴더의 컨텍스트를 조정해야합니다. 명령을 실행 sestatus하고 활성화 된 경우 일시적으로 끄고 setenforce 0폴더에 액세스 할 수 있는지 확인하십시오.

CentOS, RedHat 또는 Scientific Linux의 경우이 링크는 CentOS SELinux Wiki에 도움이됩니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.