1.遠端連接配接ECS伺服器
Windows環境下,按下 win+R 打開運作視窗,輸入 cmd 回車,打開指令控制台。輸入 ssh -V 檢測系統是否已安裝 ssh 服務

如果得到上圖所示資訊,則說明系統已經安裝 ssh 服務了
運作 ssh 使用者名@IP位址 來遠端連接配接到伺服器,之後輸入密碼(在Linux中密碼是預設沒有回顯的)就可以連接配接到遠端伺服器了(如下圖所示)
2.安裝vsftpd
(1)運作以下指令安裝vsftpd。
yum install -y vsftpd
傳回如下圖所示界面時,表示安裝成功。
(2)運作以下指令設定FTP服務開機自啟動。
systemctl enable vsftpd.service
(3)啟動FTP服務。
systemctl start vsftpd.service
(4)運作以下指令檢視FTP服務監聽的端口。
netstat -antup | grep ftp
出現如下圖所示界面,表示FTP服務已啟動,監聽的端口号為 21。此時,vsftpd預設已開啟匿名通路功能,您無需輸入使用者名密碼即可登入FTP伺服器,但沒有修改或上傳檔案的權限。
3.配置vsftpd
我這邊配的是本地模式,本地使用者模式隻支援添加的本地使用者通路搭建的FTP服務。
(1)建立使用者名和密碼
為FTP建立一個使用者
adduser 使用者名
為使用者設定密碼
passwd password
(2)建立一個供FTP服務使用的檔案目錄
mkdir /var/ftp/test
(3)更改 /var/ftp/test 目錄的擁有者為 ftptest
chown -R ftptest.ftptest /var/ftp/test
(4)修改 vsftpd.conf 配置檔案
配置FTP為主動模式請執行如下指令:
sed -i 's/anonymous_enable=YES/anonymous_enable=NO/' /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 #設定本地使用者登入後所在的目錄
配置FTP為被動模式請執行如下指令:
echo "local_root=/var/ftp/test" >> /etc/vsftpd/vsftpd.conf #設定本地使用者登入後所在的目錄
echo "pasv_enable=YES" >> /etc/vsftpd/vsftpd.conf #開啟被動模式
echo "pasv_address=" >> /etc/vsftpd/vsftpd.conf #本教程中為ECS伺服器彈性IP
echo "pasv_min_port=20" >> /etc/vsftpd/vsftpd.conf #設定被動模式下,建立資料傳輸可使用的端口範圍的最小值
echo "pasv_max_port=21" >> /etc/vsftpd/vsftpd.conf #設定被動模式下,建立資料傳輸可使用的端口範圍的最大值
一開始不太清楚主動模式和被動模式的差别,查了一下資料,最後總結:
主動模式下,資料通道是服務端指定了20端口和用戶端監聽的那個随機端口對應的,也就是說ftp服務端在傳檔案的情況下,作為用戶端,打開了20端口,連接配接ftp用戶端監聽的随機端口,這樣建立了資料通道。主動模式下其實是服務端監聽了21端口,而用戶端監聽了資料通道随機端口;在被動模式下就是服務端監聽了21端口,也監聽了資料通道随機端口。
(5)在 /etc/vsftpd 目錄下建立 chroot_list 檔案,并在檔案中寫入例外使用者名單
vim /etc/vsftpd/chroot_list
(6)重新開機FTP服務
systemctl restart vsftpd.service
4.用戶端測試
打開浏覽器,位址欄中輸入 ftp://伺服器IP位址:ftp端口号。彈出對話框中輸入使用者名和密碼,登陸成功出現如下頁面,此時可對FTP檔案進行相應權限的操作。