Centos

FTP:將使用者監禁到主文件夾

  • December 13, 2018

使用 Centos7 和 vsftpd 我想 chroot 使用者“testftp”到他的主文件夾 /home/testftp。

客戶端在 Windows 上使用 WinSCP。

使用者 testftp 可以訪問伺服器並最初連接到他的主文件夾。

然而,使用者仍然能夠瀏覽更高級別。

密碼:

testftp:x:1001:1001::/home/testftp/:/bin/bash

vsftpd.conf:

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

主文件夾 testftp:

由於 vsftpd.conf 中的這一行,已使用 chmod 500 對其進行了修改

(警告!chroot’ing 可能非常危險。如果使用 chroot,請確保使用者沒有對頂級目錄的寫入權限在 chroot 中)

x博士——。3 testftp testftp 73 12 月 5 日 10:44 testftp

在主文件夾內是另一個名為 ftp 的文件夾:

drwx—–。2 > testftp testftp 44 12 月 5 日 10:52 ftp

自己找到了答案。

在主文件夾中創建另一個文件夾:

mkdir /home/ftptest/ftp

使用以下內容更改 vsftpd.conf 文件:

chroot_local_user=否
chroot_list_enable=是

user_sub_token= $ USER local_root=/home/ $ USER/ftp(這是我們剛剛創建的文件夾)

此設置確保除了 chroot_list 中的使用者之外沒有其他使用者被 chroot

如果您希望除 chroot_list 中的使用者之外的每個人都被 chroot,請更改 chroot_local_user=YES。

這樣每個使用者都可以訪問 FTP 服務(chroot 與否)。如果您希望特定使用者無法訪問 FTP 服務,或者相反,除少數使用者之外的所有使用者,請使用 vsftpd.conf 中的 userlist。

來源

試試這個…

vim 進入 /etc/vsftp.conf 並添加 -> allow_writeable_chroot=YES

restart server -> service vsftpd restart

-or-

exit vim and run this command -> chmod aw /home/testftp

restart server -> service vsftpd重新開始

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