/ 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の間の接続について言及しています。)

関連情報