虛擬主機使用者ftp和apache使用者檔案互操作許可權解決方法
近來用linux虛擬主機學習了一下linux下的許可權比較高階一點的許可權管理,當我們使用PHP程式的時候,在安裝好以後,如果你想刪除整個目錄,你會發現apache使用者生成了一些檔案,ftp的使用者不能刪除.
其實這是有辦法解決的。
方法1.使用者組控制方法
先給所有的虛擬主機主機中的虛擬使用者(ftp使用者)加入到apache這個組.然後設定umask為002.這樣使用者和組都有讀寫執行許可權。這個是比較容易的方法.但不安全。不同的使用者可以刪除對方的檔案,因為是同一個組,組有讀寫執行的許可權.
方法2.使用linux高階的許可權管理acl。
對一個目錄設定二重許可權,除了使用者本身的使用者組,在加入apache對他要讀寫執行的許可權.
這樣使用者就能刪除apache生成的檔案.但為別人的組,別的虛擬使用者他沒法刪除.
下面我們就來看看第二種的控制方法
linux系統裡面,並不是只能為所有者,同組使用者和其他使用者這三類人分配一個檔案(目錄)的許可權,你還可以指定其他的使用者或者組,不過有個前提,掛載分割槽的時候加上acl選項,比如:
mount /dev/hda1 /home -o acl。
然後你可以使用
setfacl -m u:ftp:rwx /home/ftp/www
命令來給ftp使用者分配/home/ftp/www目錄的所有許可權
如果你要/home/ftp/www/下面新建的目錄和檔案也有同樣的許可權
setfacl -d -m u:ftp:rwx /home/ftp/www
設定預設的許可權,這個命令還可以實現多個使用者的不同許可權的控制,比如
setfacl -m u:ftp:rwx /home/www;
setfacl -m u:tmp:r-x /home/www;
ftp使用者擁有所有許可權,tmp使用者擁有隻讀許可權。
你還可以設定mask的值:
setfacl -m m::rwx /home/www;
這樣,新建的你就可以讓虛擬主機的使用者和apache使用者都有許可權操作檔案和目錄了,比如apache使用者的使用者名稱是apache,虛擬主機的使用者名稱是vmuser,目錄是/home/vmuser/www,可以使用以下的命令:
setfacl -m u:vmuser:rwx /home/vmuser/www;
setfacl -m u:apache:rwx /home/vmuser/www;
setfacl -d -m u:vmuser:rwx /home/vmuser/www;
setfacl -d -m u:apache:rwx /home/vmuser/www;
setfacl -m m::rwx /home/vmuser/www;
setfacl -d -m m::rwx /home/vmuser/www;
這樣,在安裝PHP程式的時候,就不會提示你apache的使用者沒有許可權寫檔案,而你想刪除一個目錄的時候,也不會因為下面有apache使用者生成的檔案而不能刪除了。當然這個辦法有點侷限就是基本上只有ext2和ext3分割槽格式能用,其他的,比如xfs,jfs等不能直接使用,修改後才能使用。
相關文章
- 虛擬機器與主機互傳檔案方法分享虛擬機
- [vsftp服務]——ftp虛擬使用者、許可權設定等的實驗FTP
- 批量修改資料夾及檔案使用者許可權和使用者組許可權 centosCentOS
- 使用者及檔案許可權管理
- Linux下使用者組、檔案許可權詳解Linux
- Linux下的檔案許可權和使用者身份Linux
- ftp上傳的檔案指定許可權FTP
- mysql使用者和許可權MySql
- mysql 8.0.21使用者及許可權操作MySql
- linux 檔案許可權 s 許可權和 t 許可權解析Linux
- Apache虛擬機器的配置檔案解說Apache虛擬機
- 解決root使用者對HDFS檔案系統沒有許可權的問題
- 使用者許可權繼承另一使用者的許可權繼承
- MYSQL學習筆記13: DCL許可權控制(使用者許可權操作)MySql筆記
- Linux使用者、使用者組、檔案許可權學習筆記Linux筆記
- Oracle 使用者、物件許可權、系統許可權Oracle物件
- oracle使用者許可權Oracle
- mysql使用者許可權MySql
- oracle 使用者許可權Oracle
- 檢視使用者的目錄操作許可權
- [php]apache虛擬主機配置PHPApache
- Linux 怎麼實現新增FTP使用者並設定許可權的方法LinuxFTP
- 主機偵探:Centos7系統使用chmod修改檔案許可權方法CentOS
- 【許可權管理】Oracle中檢視、回收使用者許可權Oracle
- Linux的檔案存取許可權和0644許可權Linux
- 虛擬機器和windows主機中的檔案共享虛擬機Windows
- 提取使用者許可權或是不同資料庫使用者許可權的同步資料庫
- 虛擬主機關於FTP傳輸速度慢分析及解決FTP
- mysql 使用者管理和許可權設定MySql
- 學習筆記 使用者和許可權筆記
- ubuntu12.04+proftpd1.3.4a的系統使用者+虛擬使用者許可權應用實踐UbuntuFTP
- 檔案目錄許可權操作
- mysql使用者許可權管理MySql
- 使用者物件許可權管理物件
- Oracle使用者與許可權Oracle
- 使用者許可權 plsql OracleSQLOracle
- Oracle使用者許可權管理Oracle
- linux使用者許可權Linux