![사용자가 홈 디렉토리 권한을 변경하는 것을 방지하는 방법은 무엇입니까?](https://linux55.com/image/73962/%EC%82%AC%EC%9A%A9%EC%9E%90%EA%B0%80%20%ED%99%88%20%EB%94%94%EB%A0%89%ED%86%A0%EB%A6%AC%20%EA%B6%8C%ED%95%9C%EC%9D%84%20%EB%B3%80%EA%B2%BD%ED%95%98%EB%8A%94%20%EA%B2%83%EC%9D%84%20%EB%B0%A9%EC%A7%80%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
사용자 smith
의 홈 디렉터리에 다음 권한이 있는 경우:
$ ls -l /home/staff
drwxr-x--- 51 smith staff 4096 Sep 18 09:08 smith/
홈 디렉토리의 권한을 예를 들어 755로 변경하는 것을 어떻게든 막을 수 있습니까?
답변1
한 가지 방법은 사용자별 그룹(즉, 사용자당 하나의 그룹)을 사용한 다음 홈 디렉터리 권한을 root:smith, 모드 0770으로 설정하는 것입니다.
또 다른 (좀 더 해킹적인) 방법은 스크립트를 작성하는 것입니다. /home(예: /root가 아님) 아래에 있는 모든 홈 디렉토리를 확인하는 스크립트를 생성하고(setpwent()/getpwent()를 통해 가져옴) 이를 작성하면 차이점에 대해 경고합니다. 그 자리에서 존재하거나 권한을 변경합니다.
나는 과거에 다중 사용자 환경에서 후자를 직접 수행했으며 수년 동안 일했습니다.
답변2
이는 문제의 운영 체제와 파일 시스템이 NTFS 및 ZFS에서 사용하고 NFSv4에서 표준화된 ACL 표준을 지원하는 경우에만 가능합니다.
따라서 원하는 작업을 수행할 수 있는지 여부는 운영 체제와 파일 시스템에 따라 다릅니다.
전통적인 UNIX 규칙은 디렉토리의 사용자 소유권도 액세스 모드 변경을 허용한다는 것입니다. ACL을 사용하면 사용자가 자신의 디렉터리에 대한 ACL을 변경하는 기능을 거부할 수 있습니다.
답변3
그러면 15초마다 권한이 다시 적용됩니다.
watch -n15 "chmod 0700 *"
또는 1분마다 권한을 다시 적용하는 cronjob을 만드세요.