建立ECS資源
這裡可以使用自動生成的ECS伺服器,也可以使用自己購買的雲伺服器
伺服器的資訊
已建立|已運作
彈性IP:106.14.245.75(遠端連接配接要用)
私有位址:172.16.1.141
使用者:root (遠端連接配接要用)
密碼:Cv9Ip5Lh7Io1 (遠端連接配接要用)
執行個體:i-uf65mbkzmyf5wrn3u1ia
執行個體名:u-v2rpw7fe
地域:華東 2 (上海)
遠端連接配接ECS伺服器
打開終端連接配接伺服器
使用終端操作雲伺服器
連接配接伺服器的幾種工具
Windows:cmd,powershell
Mac:terminal
這裡我使用的是Xshell5,界面更加美觀
xshell5連接配接伺服器步驟

輸入正确的彈性IP,伺服器使用者名、密碼後登陸後提示,是否接受密鑰并儲存,一鍵接受即可,操作成功過後,運作結果和windows的cmd結果相同。
安裝vsftpd服務
執行以下指令提示complete!後安裝成功
執行一下指令初始化vsftpd
systemctl start vsftpd.service #啟動vsftpd服務
systemctl status vsftpd.service #檢視服務運作狀态
netstat -antup | grep ftp # 檢視ftp服務監聽的端口
執行以上指令,運作結果如圖:
配置vsftpd
簡介
vsftpd(very secure FTP daemon)是一款在Linux發行版中最受推崇的FTP伺服器。vsftpd支援匿名通路和本地使用者模式兩種通路方式。匿名通路方式任何使用者都可以通路搭建的FTP服務;本地使用者模式隻支援添加的本地使用者通路搭建的FTP服務。
配置(匿名使用者模式)
按esc後,/anon_upload,快速定位到此修改項
把anon_upload_enable=YES 的注釋解開
執行esc後:wq 修改後儲存
配置(本地使用者模式)
添加一個ftp使用者,并配置密碼
adduser ftptest
passwd ftptest
為其他使用者添加可寫的權限,對/var/ftp/pub
chmod o+w /var/ftp/pub/
建立ftp服務使用的檔案目錄
mkdir /var/ftp/test
更改目錄的擁有者為剛才建立的使用者
chown -R ftptest:ftptest /var/ftp/test
修改vsftpd.conf
ftp主動模式
sed -i 's/listen=NO/listen=YES/' /etc/vsftpd/vsftpd.conf #監聽IPv4 sockets
sed -i 's/listen_ipv6=YES/#listen_ipv6=YES/' /etc/vsftpd/vsftpd.conf #關閉監聽IPv6 sockets
sed -i 's/#chroot_local_user=YES/chroot_local_user=YES/' /etc/vsftpd/vsftpd.conf #全部使用者被限制在主目錄
sed -i 's/#chroot_list_enable=YES/chroot_list_enable=YES/' /etc/vsftpd/vsftpd.conf #啟用例外使用者名單
sed -i 's/#chroot_list_file=/chroot_list_file=/' /etc/vsftpd/vsftpd.conf #指定例外使用者清單檔案,清單中的使用者不被鎖定在主目錄
echo "allow_writeable_chroot=YES" >> /etc/vsftpd/vsftpd.conf
echo "local_root=/var/ftp/test" >> /etc/vsftpd/vsftpd.conf #設定本地使用者登入後所在的目錄
ftp被動模式
sed -i 's/listen=NO/listen=YES/' /etc/vsftpd/vsftpd.conf #監聽IPv4 sockets
sed -i 's/listen_ipv6=YES/#listen_ipv6=YES/' /etc/vsftpd/vsftpd.conf #關閉監聽IPv6 sockets
sed -i 's/#chroot_local_user=YES/chroot_local_user=YES/' /etc/vsftpd/vsftpd.conf #全部使用者被限制在主目錄
sed -i 's/#chroot_list_enable=YES/chroot_list_enable=YES/' /etc/vsftpd/vsftpd.conf #啟用例外使用者名單
sed -i 's/#chroot_list_file=/chroot_list_file=/' /etc/vsftpd/vsftpd.conf #指定例外使用者清單檔案,清單中的使用者不被鎖定在主目錄
echo "allow_writeable_chroot=YES" >> /etc/vsftpd/vsftpd.conf
echo "local_root=/var/ftp/test" >> /etc/vsftpd/vsftpd.conf #設定本地使用者登入後所在的目錄
echo "pasv_enable=YES" >> /etc/vsftpd/vsftpd.conf #開啟被動模式
echo "pasv_address=<FTP伺服器公網IP位址>" >> /etc/vsftpd/vsftpd.conf #本教程中為ECS伺服器彈性IP
echo "pasv_min_port=20" >> /etc/vsftpd/vsftpd.conf #設定被動模式下,建立資料傳輸可使用的端口範圍的最小值
echo "pasv_max_port=21" >> /etc/vsftpd/vsftpd.conf #設定被動模式下,建立資料傳輸可使用的端口範圍的最大值
在/etc/vsftpd目錄下建立chroot_list檔案,并在檔案中寫入例外使用者名單
重新開機vsftpd
用戶端測試
使用谷歌浏覽器測試
如果使用自己購買的伺服器,則需要設定安全組