서버의 주 관리자로서 사용자가 서로의 홈 폴더를 볼 수 없도록 하고 싶습니다. (그래서 나는 내 폴더를 포함하여 홈 폴더를 750으로 chmod하여 내 폴더는 볼 수 있지만 다른 사람의 폴더는 볼 수 없습니다.)
사용자의 폴더를 확인해야 하는 경우 사용자를 'su'로 변경할 수 있지만 루트는 폴더로 이동하여 내용을 볼 수 있다고 가정하지만 분명히 'sudo'는 할 수 없습니다. ' 또는 'sudo ls'입니다.
그래서 모든 사용자를 내가 속할 수 있는 "사용자 그룹"에 넣을 생각입니다. 아니면 이것이 나쁜 생각입니까? 그냥 "su"해야 하나요? 아니면 제가 생각할 수 없는 해결 방법이 있나요?
솔루션을 검색했지만 여러분이 상상할 수 있듯이 찾은 솔루션의 99.9%는 이 특정 시나리오와 일반적인 더 많은 권한에 대해 논의하지 않습니다.
요약하자면, "su"를 하지 않고도 사용자 폴더의 내용을 볼 수 있지만 다른 사용자는 서로의 폴더 내용을 볼 수 없도록 하고 싶습니다.
답변1
ACL을 사용하지 않고 이를 달성하는 유일한 방법은 권한을 설정 750
하고 사용자 이름이 다른 모든 사용자의 기본 그룹의 구성원이 되는 것입니다. 예를 들어 다음과 같은 사용자가 있다고 가정해 보겠습니다.
me
user1
otheruser
/home
다음과 같습니다.
drwxr-x--- 2 me me 4096 Mar 3 12:14 me
drwxr-x--- 24 user1 user1 4096 Apr 8 05:33 user1
drwxr-x--- 2 otheruser otheruser 4096 Feb 11 09:27 otheruser
그룹 파일에 다음이 표시됩니다.
me:x:500:
user1:x:501:
otheruser:x:502:
다른 사용자의 기본 그룹에 자신을 추가하면 그룹 인구는 다음과 같습니다.
me:x:500:
user1:x:501:me
otheruser:x:502:me
답변2
All Users 그룹의 구성원이 되는 것은 권장하지 않지만 확장 ACL을 살펴보세요.
setfacl
및 에 대한 웹 또는 매뉴얼 페이지를 읽고 getfacl
다른 홈 디렉토리에 들어갈 수 있는 기본 ACL을 설정하십시오.