Linux

創建新的 vsftpd 使用者並鎖定到(指定)主/登錄目錄

  • April 20, 2020

我需要定期對安裝了 vsftp 的 CentOS linux 伺服器上的各種目錄提供臨時和有限的訪問權限。

我創建了一個使用者useradd [user_name]並使用passwd [password].

我在其中創建了一個目錄,/var/ftp然後將其綁定到我希望限制訪問的目錄。

我還需要具體做什麼來確保當這個使用者登錄到 FTP 時,他們只能訪問這個目錄嗎?

完整的答案解決了我對逐步演練後的任何其他人的問題…

vsftpd以此為指導進行安裝。

  • 使用 . 創建使用者useradd [user_name]
  • 用 . 創建使用者密碼passwd [user_name]。(系統將提示您指定密碼)。
  • 在其中創建 FTP 目錄,/var/ftp然後綁定到您希望為該使用者指定的“主”目錄,使用mount --bind /var/www/vhosts/domain.com/ /var/ftp/custom_name/.
  • 更改使用者的主目錄usermod -d /var/ftp/custom_name/ user_name

/etc/vsftpd/vsftpd.conf中,確保設置以下所有內容:-

  • chroot_local_user=YES
  • chroot_list_enable=YES
  • chroot_list_file=/etc/vsftpd.chroot_list

vsftpd.chroot_list如果您希望他們對伺服器上的任何位置具有完全訪問權限,請僅在文件中列出使用者。通過不在此文件中列出它們,您是在說將所有vsftpd使用者限制在他們指定的主目錄中。

換句話說(供參考):-

  1. 意味著預設情況下,除了文件中的使用者之外,所有使用者都會被 chroot…
  • chroot_local_user=YES
  • chroot_list_enable=YES
  1. 意味著預設情況下,只有文件中的使用者才會被 chroot…
  • chroot_local_user=否
  • chroot_list_enable=YES

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