2011-11-11 134 views
1

如何設置用戶/組以便PHP/Apache和proFTPD都可以完全訪問文件/目錄?權限 - PHP和FTP

FTP用戶

Username: webadmin 
User ID: 1001 
Home dir: /var/www 
Shell: /usr/sbin/nologin 
Primary group: www-data 

Move home dir if changed: yes 
Change user ID on files: home dir 
Change group ID on files: home dir 
Modify user in other modules: yes 

當與webadmin的FTP所有文件都列出,但沒有寫權限登錄!?

+1

您可能會在serverfault.com上獲得更多回復,這是針對系統管理問題的。我已將其標記給版主,希望他們能爲您移動。 – seanhodges

+0

不知道你的安全模型是什麼,它不可能給出答案 - 但是你希望文件可以被網絡服務器寫入,這意味着模型是嚴重缺陷的。 – symcbean

+0

@symcbean,你將如何設置用戶/組? :) – clarkk

回答

0

如果你想讓多個用戶訪問某些東西,那麼你應該使用組。

首先確保您所有必需的網絡用戶都是某個組的成員,可能是www-data。

usermod -a -G www-data webadmin 

將用戶'webadmin'添加到'www-data'組中。

接着,該組的文件的改變到該組:

chgrp -R www-data files/dirs 

遞歸設置組的文件/顯示目錄到WWW的數據的。

最後,改變有關目錄的權限,允許完全訪問其組的所有成員:

chmod -R g+rwx files/dirs 

遞歸給組成員讀,寫和執行權限的文件/迪爾斯

+0

執行'chgrp -R www-data *'什麼都沒有發生..當在FTP上登錄時,所有者仍然是'proftpd' – clarkk

+0

'chgrp -R www-data *'將遞歸地設置當前目錄中所有內容的組(不包括當前目錄,或當前目錄中的隱藏文件)轉換爲www-data。如果你運行'ls -l',這應該反映在組權限中。你確定你正在從正確的目錄運行chgrp命令嗎? –