1、查詢linux伺服器是否已經安裝過vsftpd服務;

rpm -qa|grep vsftpd

解除安裝已經安裝服務命令:rpm -e vsftpd

2、未安裝,安裝vsftpd服務;

執行:yum install vsftpd -y 線上安裝vsftpd服務

3、安裝成功後,修改配置檔案;

使用命令:vim /etc/vsftpd/vsftpd.conf

找到:anonymous_enable引數將值設定為NO【關閉匿名登陸功能


chroot_list_enable=YES 【限制訪問自身目錄

chroot_list_file=/etc/vsftpd/chroot_filelist【編輯chroot_filelist檔案,將受限制的使用者新增進去,每行一個使用者,新增進去的使用者為步驟4中新增的使用者


修改完成後啟動vsftpd服務:systemctl start vsftpd

4、新增使用者

root使用者登陸後:

useradd -d /data02/resource firewolf 【增加使用者firewolf,並指定test使用者的主目錄為/data02/resource

passwd firewolf 【為firewolf使用者設定密碼

usermod -s /sbin/nologin firewolf 【限定使用者firewolf只能ftp登陸

5、本機命令列登陸嘗試

ftp 192.168.21.165

輸入使用者名稱和密碼後報錯:vsftpd:500 OOPS vsftpd:refusing to run with writable root inside chroot()

這是因為從2.3.5之後,vsftpd增加了安全檢查,如果使用者被限定在了其主目錄下,則該使用者的主目錄不能再具有寫許可權了!如果檢查發現還有寫許可權,就會報錯。

要修復這個錯誤,可以用命令chmod a-w /data02/resource去除使用者主目錄的寫許可權,或者在vsftpd配置檔案中增加一行:

allow_writeable_chroot=YES