/tmp 디렉토리에서 사용자 액세스 제거

/tmp 디렉토리에서 사용자 액세스 제거

/tmp 디렉토리에 대한 특정 사용자의 액세스를 제거하는 것이 가능합니까? 즉, 사용자는 /tmp 디렉토리를 읽을 수도 없습니까?

나는 tmp 디렉토리에 1777 권한이 있다는 것을 알고 있습니다. 이는 각 사용자가 파일을 생성할 수 있도록 허용하지만 사용자 자신의 파일 수정을 제한합니다. 나는 이것을 할 방법을 찾을 수 없습니다.

예:

한 사용자 그룹은 원하는 것은 무엇이든 할 수 있어야 하지만, 다른 사용자 그룹은 다른 사용자 그룹이 생성하는 내용을 검사할 수 없어야 합니다.

한 가지 해결책은 디렉터리를 만들고 사용자 그룹만 허용하도록 권한을 설정하는 것입니다. 하지만 모든 사용자는 이 특정 디렉터리를 사용하려면 그곳에서 스크립트/프로그램을 편집해야 합니다.

systemd를 통한 privatetmp와 유사한 방법이 있지만 서비스 대신 사용자를 위한 방법이 있습니까? 사용자가 모르는 사이에 사용자를 위한 tmp 디렉토리를 설정한다는 뜻입니다. 이것이 가능합니까?

답변1

1777 액세스 권한을 변경하면 tmp모든 것이 중단됩니다. 접근을 허용하지 않으면 /tmp온갖 종류의 예상치 못한 실패에 직면하게 될 것입니다.

귀하의 요구 사항에 맞을 수도 있고 그렇지 않을 수도 있는 솔루션이 많이 있습니다.

  • pam-tmpdir, Stephen Kitt가 그의 의견에서 언급했듯이 (그것에 대해 몰랐습니다)
  • 환경 변수 TMPDIR, TEMP및 유사한 항목 을 설정합니다 (프로그램/스크립트가 이 POSIX 변수를 사용하는 경우) TEMPDIR.TMP~/.tmp
  • 사용자별 하위 디렉터리를 사용하려면 스크립트/프로그램/...을 변경하세요.
  • VirtualBox와 같은 가상 환경을 사용하세요
  • chroot 환경을 설정합니다.

이는 XY 문제와 매우 유사해 보입니다. 제가 생각할 수 있는 유일한 응용 프로그램은 어쨌든 각 사용자/그룹에 대해 (가상) 환경을 생성해야 하는 코스 환경입니다.

관련 정보