Linux
將伺服器帳戶提供給網站管理員
我為多個網站管理員創建了一個系統,用於儲存和服務他們的網站。他們有自己的 linux 帳戶和主目錄。它們的 public_html 文件夾通過
ln -s
命令連結到 webserver html 目錄/usr/share/nginx/html/
,因此它們在 Internet 中可見。但使用者可以查看其他使用者的主文件夾。我想阻止他們觀看不屬於他們的文件夾。
如何得到它?
這是使用者的權限資訊。
abc@localhost:/home/gameboy$ sudo namei -mo /home/abc/public_html/info.php [sudo] password for abc: f: /home/abc/public_html/info.php drwxr-xr-x root root / drwxr-xr-x root root home drwxr-xr-x abc abc abc drwxr-xr-x abc abc public_html -rw-r--r-- abc abc info.php abc@localhost:/home/gameboy$ id abc uid=1002(abc) gid=1002(abc) grupy=1002(abc),27(sudo) abc@localhost:/home/gameboy$
我可以看到使用者
abc
是sudo
組的成員。這意味著(至少在 Ubuntu 系統上)該使用者能夠使用 sudo 執行命令(獲得 root 訪問權限)。如果這適用於您所說的所有使用者,那麼您不能阻止他們訪問其他人的文件。使用者可以簡單地成為 root 並做他/她想做的任何事情。
如果我們跳過這一點,您需要設置每個文件/文件夾的權限,以便它只能由使用者讀取/寫入,並且只能由特定組讀取,例如
www-data
使 Web 伺服器能夠訪問它們(chmod 750
文件夾和chmod 740
文件)。