/tmp 내의 심볼릭 링크에 대한 권한

/tmp 내의 심볼릭 링크에 대한 권한

내 컴퓨터에는 2명의 사용자가 있습니다: linuxliteotheruser.

otheruser파일이 있습니다:

otheruser@linuxlite:~$ ls -l a
-rw-rw-r-- 1 otheruser otheruser 6 Mar 31 12:47 a
otheruser@linuxlite:~$ cat a
hello

linuxlite파일과 심볼릭 링크는 다음 위치에 생성됩니다 /tmp.

otheruser@linuxlite:~$ ls -l /tmp/file /tmp/link
-rw-rw-r-- 1 linuxlite linuxlite  3 Mar 31 12:49 /tmp/file
lrwxrwxrwx 1 linuxlite linuxlite 17 Mar 31 12:49 /tmp/link -> /home/otheruser/a

이제 그는 및 를 otheruser읽을 수 있지만 다음을 읽을 수는 없습니다 ./tmp/file/home/otheruser/a/tmp/link

otheruser@linuxlite:~$ cat /tmp/file
hi
otheruser@linuxlite:~$ cat /home/otheruser/a
hello
otheruser@linuxlite:~$ cat /tmp/link
cat: /tmp/link: Permission denied

내 질문은,그가 타겟과 그가 소유한 다른 파일을 심볼릭 링크와 동일한 디렉터리에서 읽을 수 있다면 왜 그가 otheruser소유한 심볼릭 링크를 읽을 수 없습니까?linuxlite

중요한 경우 권한은 다음 /tmp과 같습니다.

otheruser@linuxlite:~$ ls -l -d /tmp
drwxrwxrwt 9 root root 4096 Mar 31 13:17 /tmp

배포판은 Linux Lite 3.0이고 커널은 Linux 4.4.0-21.generic (i686)입니다.

답변1

Linux Lite는 Ubuntu를 기반으로 하며,누구나 쓸 수 있는 고정 디렉터리의 기호 링크를 제한합니다.(포함 /tmp): 기호 링크는 해당 소유자만 역참조할 수 있습니다.

예를 들어 다른 곳에서 심볼릭 링크를 생성하면 /home/linuxlite예상한 방식으로 심볼릭 링크를 역참조할 수 있습니다.

(Ubuntu는 이런 방식으로 작동하는 유일한 배포판이 아닙니다. 이에 대한 문서는 Ubuntu에만 해당되는 것으로 보이기 때문에 Linux Lite와 Ubuntu 간의 연결을 언급합니다.)

관련 정보