Ubuntu

為 VSFTP 為每個使用者定義任意 chroot

  • February 12, 2010

我想為我的伺服器(Ubuntu 8.04)設置兩個 FTP 使用者:

  1. 一種登錄到 /var/www 以便他們可以訪問和管理所有網站文件的系統
  2. 一個是 chroot’d 到(比如說)/var/www/images 以便他們只能訪問該站點的圖像

理想情況下,我希望能夠分別配置每個使用者的 FTP 目錄,例如:

#userid     chroot location
#--------------------------
webadmin   /var/www
imageadmin /var/www/images
#etc...

有沒有辦法用 VSFTP 做到這一點?我能找到的所有關於虛擬使用者的例子都顯示了 chrooting 的/some/dir/$username格式。

我想我可以創建一個帶有主目錄的本地 imageadmin 帳戶/var/www/images並使用本地登錄名?這對於僅 FTP 的使用者是否明智(我想我可以將 shell 設置為 null ……)?

sudo useradd -d /var/www webadmin
sudo passwd webadmin
sudo useradd -d /var/www/images imageadmin
sudo passwd imageadmin

Vsftpd 會自動 chroot 使用者到他們的主目錄,所以如果你創建的使用者的主目錄指向你希望他們被監禁的那些,你就完成了。

將 shell 設置為 null 是個好主意。也可以拒絕某些使用者登錄 ssh。

引用自:https://serverfault.com/questions/112220