Linux
防止在 CentOS 中刪除特定文件夾
我有一個執行 PureFTPd 的 CentOS 伺服器,其中多個虛擬使用者映射到單個系統使用者。這些虛擬使用者中的每一個都被 chroot 到與其使用者名對應的目錄。目錄樹是:
/ftp_accounts
- /virtual_user_1
- /virtual_user_2
- …
- /virtual_user_N
這些 FTP 虛擬使用者中只有一個(我們稱他為“master_virtual_user”)被 chroot 主
ftp_accounts
目錄,允許訪問所有子文件夾。對於這個特定的“master_virtual_user”,我想防止僅刪除文件夾,但仍保持對該目錄樹中其他所有內容的
virtual_user_*
完全讀寫訪問權限。鑑於所有這些 FTP 虛擬使用者都映射到同一個系統使用者,有沒有辦法實現這一點?
如果您可以在目錄上使用不可變標誌,那就太好了,但是您可以通過在該目錄中創建一個不可變的文件來作弊。那麼。
touch virtu_user_X/.immutable
_chattr +i virt_user_x/.immutable
例如:[root@hellonurse ~]# cd /root [root@hellonurse ~]# mkdir z [root@hellonurse ~]# cd z [root@hellonurse z]# touch .i [root@hellonurse z]# chattr +i .i [root@hellonurse z]# cd .. [root@hellonurse ~]# rm -rf z rm: cannot remove ‘z/.i’: Operation not permitted [root@hellonurse ~]# chattr -i z/.i [root@hellonurse ~]# rm -rf z [root@hellonurse ~]# ls z ls: cannot access z: No such file or directory