若是使用window文件管理鏈接,要注意下圖的設置
html
使用 apt-get 安裝 vsftpdvim
sudo apt-get install vsftpd -y
安裝完成後 VSFTPD 會自動啓動,經過 netstat 命令能夠看到系統已經監聽了 21 端口bash
sudo netstat -nltp | grep 21
若是沒有啓動,能夠手動開啓 VSFTPD 服務:服務器
sudo systemctl start vsftpd.service
sudo mkdir /home/she
執行完後,在這裏 /home/she就能看到新建的文件夾 she了。app
建立登陸歡迎文件測試
sudo touch /home/she/welcome.txt
sudo useradd -d /home/she -s /bin/bash she
爲用戶 she 設置密碼編碼
sudo passwd she
刪除掉 pam.d 中 vsftpd,由於該配置文件會致使使用用戶名登陸 ftp 失敗3d
sudo rm /etc/pam.d/vsftpd
sudo usermod -s /sbin/nologin she
sudo chmod a+w /etc/vsftpd.conf sudo vim /etc/vsftpd.conf
修改 /etc/vsftpd.conf 文件中的配置(直接將以下配置添加到配置文件最下方):rest
# 限制用戶對主目錄之外目錄訪問 chroot_local_user=YES # 指定一個 userlist 存放容許訪問 ftp 的用戶列表 userlist_deny=NO userlist_enable=YES # 記錄容許訪問 ftp 用戶列表 userlist_file=/etc/vsftpd.user_list # 不配置可能致使莫名的530問題 seccomp_sandbox=NO # 容許文件上傳 write_enable=YES #不容許下載 download_enable=NO #修改用戶上傳文件的所屬主 chown_uploads=YES chown_username=root # 使用utf8編碼 utf8_filesystem=YES #限制用戶權限的目錄 user_config_dir=/etc/vsftpd/vsftpd_user_conf
sudo touch /etc/vsftpd.user_list sudo chmod a+w /etc/vsftpd.user_list
想了解沒有配置的意思,請參考前面鏈接
https://security.appspot.com/vsftpd/vsftpd_conf.htmlcode
因爲咱們she用戶登陸ftp須要打開目錄和上傳文件,
讀權限:對文件具備讀取文件內容的權限、對文件目錄具備瀏覽目錄信息的權限
寫權限:對文件具備修改文件內容的權限、對文件目錄具備移動刪除目錄信息的權限
執行權限:對文件具備執行文件的權限、對文件目錄具備進入目錄的權限
所以,防止用戶下載能夠經過如下兩個途徑
----r---w- 1 she she 616448 Mar 8 15:04 第1次實驗_201*****419_麥*文.doc
首先執行
mkdir -p /etc/vsftpd/vsftpd_user_conf
而後執行
vim /etc/vsftpd/vsftpd_user_conf/she
(注意後面的 she)對應本身要限制權限的帳戶,我限制的 是she 帳戶對應的命令就變成
vim /etc/vsftpd/vsftpd_user_conf/she
在裏面 寫入
cmds_denied=DELE
這句話的意思是 禁止使用 刪除命令。更多命令
https://blog.51cto.com/dreamway/1045610
從新打開配置文件
vim /etc/vsftpd/vsftpd.conf
在尾部 寫一句
user_config_dir=/etc/vsftpd/vsftpd_user_conf
sudo systemctl restart vsftpd.service