由于最近雲栖大會的召開,在薅羊毛參加各類活動的時候,發現阿裡雲開啟了七天訓練營的報名,進階班結業還可以發ACA(阿裡雲雲計算助理工程師)的免費考試資格,最後沖着這個證書考試資格就把名給報了。
七天訓練營第一天的任務是基于 ECS 搭建 FTP 服務,教程文檔詳細,任務總體難度不大。下面是此次任務的學習筆記。
操作環境:macOS Mojave 10.14.3、Terminal 2.9.1
背景知識
在開始第一天任務之前,先記錄一下 ECS 、FTP 、VSFTPD這三個概念。(如果不了解它們分别代表什麼,那麼此次任務的意義就沒法展現。)
ECS:雲伺服器 ECS ,全稱 Elastic Compute Service ,是阿裡雲提供的一種彈性計算服務。簡單來說,ECS 就是一個伺服器,隻不過在“雲”上,使用者省去了以前實體伺服器采購、運維等步驟,而且還沒有裝置折舊之類的顧慮。相對于實體伺服器的限制,ECS 支援即開即用,以及還可以對伺服器配置彈性伸縮。
FTP:檔案傳輸協定 FTP,全稱 File Transfer Protocol ,是 TCP/IP 協定組中的協定之一。FTP 協定由兩個部分組成,一是 FTP 伺服器,可以用來存儲檔案;二是 FTP 用戶端,可以用來通路 FTP 伺服器上的資源。該協定預設使用 TCP 端口中的20和21這兩個端口。
VSFTPD:全稱 very secure FTP daemon ,是一款在 Linux 發行版中最受推崇的FTP伺服器。在今天的任務中,将使用這款伺服器軟體開啟 FTP 服務。
第一步:遠端連接配接 ECS 伺服器
首先,根據提示在頁面左側開通雲産品資源,免費開通一個 ECS 伺服器,用于後續實驗。

然後,打開 Terminal ,輸入連接配接指令
ssh [username]@[ipaddress]
,其中[username]對應 ECS 伺服器的使用者,一般為預設的root,[ipaddress]對應 ECS 伺服器的彈性ip,該資訊可從右側的 ECS 伺服器資訊欄擷取。例如:
(注意,ssh與root之間存在一個空格。)
輸入連接配接指令後,提示
Are you sure you want to continue connecting (yes/no)?
,直接輸入
yes
繼續連接配接,之後會要求輸入 ECS 伺服器的密碼,密碼依舊可從右側的資訊欄擷取。(注意,輸入密碼時不可見,不要誤以為自己沒輸。)
輸入正确密碼後,提示
Welcome to Alibaba Cloud Elastic Compute Service !
即為連接配接成功。
第二步:安裝vsftpd
1.輸入指令
yum install -y vsftpd
,用于安裝vsftpd。成功安裝後傳回的界面:
2.輸入指令
systemctl enable vsftpd.service
,用于設定 FTP 服務開機自啟動。
3.輸入指令
systemctl start vsftpd.service
,用于啟動 FTP 服務。
4.輸入指令
netstat -antup | grep ftp
,用于檢視FTP服務監聽的端口。成功檢視端口的界面:
(圖中資訊表示FTP服務已啟動,監聽的端口号為21)
第三步:配置vsftpd
此處選擇配置匿名使用者模式進行通路 vsftpd 。
vim /etc/vsftpd/vsftpd.conf
,打開配置檔案 vsftpd.conf 。
2.按i鍵進入編輯模式,将匿名上傳權限anon_upload_enable=YES 的注釋解開,即将該行代碼前面的#删除即可,該行代碼預計在第29行。
3.按 ESC 鍵退出編輯模式,輸入
:wq
儲存并退出。
chmod o+w /var/ftp/pub/
,更改/var/ftp/pub目錄的權限,用于為 FTP 使用者添加讀寫權限。(可通過
阿裡雲開發者社群搜尋“vim常用指令”,對vim、chmod等常用指令進行知識拓展。)
5.輸入指令
systemctl restart vsftpd.service
,重新開機 FTP 服務。
第四步:用戶端測試
匿名模式可直接通過浏覽器通路 FTP 伺服器,無需進行測試操作。不過,好奇心害死貓,自己搭建的 FTP 服務怎麼說也要看一下長啥樣。
打開chrome浏覽器,在位址欄輸入
ftp://<FTP伺服器公網IP位址>:FTP端口
,其中FTP伺服器公網IP位址為ECS伺服器的彈性IP位址。
此時,可在該頁面對FTP檔案進行相應權限操作。
小結
整個流程較簡單,ssh指令連接配接伺服器後,用yum指令安裝vsftpd,用vim指令進入配置檔案解開注釋獲得相關權限,最後用chomd指令修改相關檔案權限即可。