사용자가 디렉터리에 파일을 생성하도록 허용하지만 해당 사용자가 상위 디렉터리에서 파일을 생성하거나 삭제하는 것을 방지하려면 어떻게 해야 합니까?

사용자가 디렉터리에 파일을 생성하도록 허용하지만 해당 사용자가 상위 디렉터리에서 파일을 생성하거나 삭제하는 것을 방지하려면 어떻게 해야 합니까?

/tmp사용자(uid로 식별됨)가 에서 파일을 생성 및 삭제하는 것을 방지하고 해당 사용자가 해당 사용자가 소유한 디렉터리에 파일을 생성하도록 허용하고 싶습니다 . /tmp/hello어떻게 해야 하나요? 이 사용자는 적절한 권한이 있는 다른 사용자가 아니라 에서 파일을 만들고 삭제하는 것만 차단해야 합니다 /tmp. /tmp제자리에 있다 root.

답변1

파일 ACL을 사용하여 이 작업을 수행할 수 있습니다.

다음을 통해 사용자가 badguy파일을 생성하지 못하도록 할 수 있습니다 tmp.

setfacl -m u:badguy:r-x /tmp

hello"일반적으로" 디렉터리에 쓰도록 허용하거나(모든 사람이 chown디렉터리에 쓸 수 있도록 허용 badguy) ACLS 파일을 다시 사용할 수 있습니다.

setfacl -m u:badguy:rwx /tmp/hello

관련 정보