Symlink
為什麼要更改 linux 中符號連結的所有者?
在 linux 中,可以更改符號連結(符號連結)的所有者或組所有者。我想知道為什麼有人要這樣做,因為通過符號連結訪問文件時不使用符號連結的權限。
我只能想像一個可能有用的案例:允許使用者刪除帶有粘性位的目錄中的符號連結。
您是否知道更改符號連結的所有者或組所有者可能有用的其他情況?
假設 root 在 Eve 可以寫入的目錄中工作。此目錄中有一個文件
foo
需要更改為屬於 Eve。所以根類型chown eve foo
。但就在 root 擊中 Enter 之前,Eve 執行ln -sf /etc/passwd foo
. 現在/etc/passwd
屬於夏娃!如果 root 可以執行chown -h eve foo
以確保不遵循符號連結,那麼可以做的最大傷害是同一目錄中的某些其他文件已更改為屬於 Eve。
lchown
當您更改目錄樹的所有者時也很方便。您無需擔心意外影響樹外的文件,因為您呼叫chown
了符號連結。
只有當連結的所有者與目標的所有者匹配時,Apache 才能配置為遵循符號連結。這可以幫助防止使用者創建連結以訪問他們不擁有的文件(例如 /etc/passwd)。
…所以假設您,作為 root,希望apache 跟隨一個連結來顯示某個日誌文件,該文件由 xymon 或其他東西擁有,但是您不想通過允許它遵循符號連結來放鬆 apache 的安全性而不管所有者是誰. 然後你可能想讓 xymon 成為符號連結的所有者。