그룹 0에 속한다는 것은 무엇을 의미합니까?

그룹 0에 속한다는 것은 무엇을 의미합니까?

내가 물려받은 시스템의 몇몇 사용자는 /etc/passwd에서 그룹을 0으로 설정했습니다. 그게 무슨 뜻이야? 본질적으로 전체 루트 액세스 권한이 부여됩니까?

시스템은 CentOS 5를 실행하고 있으며 사용자는 주로 시스템 관련 사항에 관심이 있는 것으로 보이지만 이전 관리자도 그룹에 포함되어 있습니다.

$ grep :0: /etc/passwd
root:x:0:0:root:/root:/bin/bash
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
operator:x:11:0:operator:/root:/sbin/nologin
jsmith:x:500:0:Joe Smith:/home/jsmith:/bin/bash
$

답변1

사용자 0(루트 사용자)과 달리 그룹 0에는 커널 수준에서 특별한 권한이 없습니다.

전통적으로 그룹 0은 많은 UNIX 변형에 대한 특별한 권한, 즉 루트가 될 수 있는 권한 su(루트 비밀번호를 입력한 후) 또는 비밀번호를 입력하지 않고 루트가 될 수 있는 권한을 갖습니다. 기본적으로 그룹 0의 사용자는 시스템 관리자입니다. 그룹 0에 특별한 권한이 있는 경우 호출됩니다.wheel

sudoLinux에서 그룹 0은 및 같은 권한 상승 유틸리티에 대해서도 특별한 의미를 갖지 않습니다 su. 바라보다왜 데비안은 기본적으로 "wheel" 그룹을 생성하지 않습니까?

내가 아는 한 CentOS에서는 그룹 0에 특별한 의미가 없습니다. 기본 파일에서는 참조되지 않습니다 sudoers. 시스템 관리자는 UNIX 전통을 따르고 그룹 0의 구성원에게 몇 가지 특별한 권한을 부여하기로 결정할 수 있습니다. PAM 구성( /etc/pam.conf, /etc/pam.d/*) 및 sudoers 파일( /etc/sudoers)을 확인합니다(그룹 0에 특수 권한이 ​​부여될 수 있는 유일한 위치는 아니지만 그럴 가능성이 가장 높습니다).

답변2

사용자 ID 0과 달리 커널은 그룹 0에 특별한 권한을 부여하지 않습니다. 그러나 일반적으로 0은 사용자의 기본 그룹이므로 root이는 이러한 사람들이 일반적으로 루트가 소유한 파일에 액세스하거나 수정할 수 있음을 의미합니다(이러한 파일은 일반적으로 그룹 0에도 속하므로).

또한 일부프로그램그룹 0은 특별하게 취급될 수 있습니다. 예를 들어 su일부 BSD 시스템에서는그룹 0의 구성원에게는 비밀번호 없는 루트 액세스 권한이 부여됩니다..

따라서 수퍼유저 클래스는 아니지만 누가 회원인지는 알 수 있습니다.

답변3

이는 단지 기본 그룹이 root다른 것이 아니라는 의미입니다. 예를 들어 그룹이 설정된 파일에 액세스할 때 그룹 설정을 사용합니다 root.

대부분의 표준 시스템 파일은 속 root.root하지만 그룹 권한은 일반적으로 전역 권한과 동일하므로 시스템에서 표준 파일에 대한 그룹 권한을 변경하지 않는 한 이 자체로는 아무런 이점이 없습니다.

전체 루트 권한을 부여하지 않습니다.

답변4

나는 파티에 조금 늦었지만 오늘도 같은 질문을 스스로에게 던지고 다음과 같은 결론에 도달했습니다.

이것은 이의입니다최소 권한의 원칙그러므로 피해야 합니다.

더 구체적으로 말하면, 이는 많은 일반 파일 및 디렉터리에 액세스할 수 있을 뿐만 아니라 사용자에게 많은 권한을 부여하는(읽기, 쓰기 또는 실행) 권한을 사용자에게 제공할 수 있습니다.특별한이는 시스템의 커널과 대화하는 것과 같습니다.

그러나 이는 시스템에 따라 다를 수 있으므로 이를 실행하여 모든 항목을 찾아 확인해야 합니다(첫 번째는 읽기용이고 두 번째는 쓰기용이며 eXecute는 독자를 위한 연습으로 남겨 둡니다).

find / -group 0 -perm -g+r ! -perm -o+r  -ls | less 
find / -group 0 -perm -g+w ! -perm -o+w  -ls | less

이들 중 일부는 일반 파일 및 디렉터리(예: 홈 디렉터리 /root)일 수 있지만 다른 일부는 커널에 대한 인터페이스 역할을 하는 의사 파일(예: /proc 및 /sys)일 수 있습니다.

예를 들어:

find /sys -type f -group 0 -perm -g+w ! -perm -o+w  -name 'remove'
/sys/devices/pci0000:00/0000:00:17.0/0000:13:00.0/remove
/sys/devices/pci0000:00/0000:00:17.0/remove
/sys/devices/pci0000:00/0000:00:16.6/remove
...
etc.

이러한 장치가 무엇인지 확인 하는 데 사용됩니다 lspci -v |less(예: 저장소 컨트롤러, USB 컨트롤러, 네트워크 및 비디오 카드 등).

관련 정보