1.輸入sudo apt-get install vsftpd 回車
這樣就安裝完畢了,然後去建立一個ftp的帳號,我這裡使用的是ftp。
2.輸入useradd ftp 回車
輸入密碼 回車
這樣帳號就新建好了在/home/下應該會有一個ftp的資料夾
3.配置vsftpd
輸入vi /etc/vsftpd.conf
將Anonymous_enable=YES (允許匿名登陸) 改為NO
listen=YES
local_enable=YES
write_enable=YES
ftpd_banner="歡迎來到XXX的FTP“ -------這個寫不寫無所謂,我弄著玩的
編輯完成後輸入wq儲存
然後/etc/init.d/vsftpd restart 重啟伺服器就可以了,這樣已經可以完成訪問ftp了。
4.下面我說一下如果是指定目錄訪問如何設定
首先vi /etc/passwd 看看你的使用者,比如我的ftp帳號 ftp:x:1000:1000::/home/ftp:/bin/sh
我的ftp預設路徑就是/home/ftp,這個只是看看其實沒什麼大作用。
關鍵的步驟是下面
將chroot_list_enable=YES和chroot_list_file=/etc/vsftpd.chroot_list的註釋去掉
chroot_local_user=YES這個註釋不要去
這樣的意思 就是 加入vsftpd.chroot_list列表中的使用者將只能訪問自己的目錄,其他將無法訪問。
修改完畢後儲存。
去建立vsftpd.chroot_list,輸入vi /etc/vsftpd.chroot_list建立這個檔案然後寫入使用者ftp儲存。
重啟vsftpd
使用ftp工具filezilla連線會發現連結錯誤
是因為chroot從某個版本開始,開啟了chroot後根目錄不允許有寫的許可權,所以你需要輸入
chmod a-w /home/ftp 回車
然後在試試看 應該就可以連線了,並且只能訪問自己的目錄/home/ftp
2016年1月21日
今天安裝VSFTPD發現報530 Login incorrect
把/etc/pam.d/vsftpd裡面的deny改成allow就可以了