基於 CentOS 搭建 FTP 檔案服務
安裝並啟動 FTP 服務
任務時間:5min ~ 10min
安裝 VSFTPD
使用 yum
安裝 [vsftpd]:
yum install vsftpd -y
vsftpd
是在 Linux 上被廣泛使用的 FTP 伺服器,根據其官網介紹,它可能是 UNIX-like 系統下最安全和快速的 FTP 伺服器軟體。
啟動 VSFTPD
安裝完成後,啟動 FTP 服務:
service vsftpd start
啟動後,可以看到系統已經[監聽了 21 埠]:
netstat -nltp | grep 21
FTP 協議預設使用 21 埠作為服務埠
配置 FTP 許可權
任務時間:5min ~ 10min
目前 FTP 服務登陸允許匿名登陸,也無法區分使用者訪問,我們需要配置 FTP 訪問許可權
瞭解 VSFTP 配置
vsftpd 的配置目錄為 /etc/vsftpd,包含下列的配置檔案:
- vsftpd.conf 為主要配置檔案
- ftpusers 配置禁止訪問 FTP 伺服器的使用者列表
- user_list 配置使用者訪問控制
閱讀上述配置以瞭解更多資訊。如果您準備好了,點選下一步開始修改配置來設定許可權。
阻止匿名訪問和切換根目錄
匿名訪問和切換根目錄都會給伺服器帶來[安全風險],我們把這兩個功能關閉。
編輯 /etc/vsftpd/vsftpd.conf
# 禁用匿名使用者
anonymous_enable=NO
# 禁止切換根目錄
chroot_local_user=YES
編輯完成後,按 Ctrl + S
儲存配置,重新啟動 FTP 服務,如:
service vsftpd restart
匿名訪問讓所有人都可以上傳檔案到伺服器上而無需鑑權,而允許切換根目錄則可能產生越權訪問問題。
在程式碼編輯器中,用
Ctrl + F
進行搜尋,Mac 使用者用Cmd + F
進行搜尋
建立 FTP 使用者
建立一個使用者 ftpuser
[?]:
useradd ftpuser
為使用者 ftpuser
echo "Password" | passwd ftpuser --stdin
為了方便後面的實驗步驟,不建議使用其它的使用者名稱
下面命令中的密碼為實驗室為您生成,為了方便後面的實驗步驟,不建議使用其他密碼
限制該使用者僅能通過 FTP 訪問
限制使用者 ftpuser
只能通過 FTP 訪問伺服器,而不能直接登入伺服器:
usermod -s /sbin/nologin ftpuser
為使用者分配主目錄
為使用者 ftpuser
建立[主目錄]並約定:
/data/ftp
為主目錄, 該目錄不可上傳檔案
/data/ftp/pub
檔案只能上傳到該目錄下
mkdir -p /data/ftp/pub
建立登入歡迎檔案 [?]:
echo "Welcome to use FTP service." > /data/ftp/welcome.txt
設定訪問許可權:
chmod a-w /data/ftp && chmod 777 -R /data/ftp/pub
設定為使用者的主目錄:
usermod -d /data/ftp ftpuser
使用者的主目錄是使用者通過 FTP 登入後看到的根目錄
方便使用者登入後可以看到歡迎資訊,並且確定使用者確實登入到了主目錄上。
準備域名和證書
任務時間:15min ~ 30min
注:如果您不需要通過域名訪問 FTP 伺服器則可以直接點選“已完成,下一步”跳過域名和證書的準備環節
域名註冊
如果您還沒有域名,可以在騰訊雲上選購,過程可以參考下面的視訊。
- 視訊 - 在騰訊雲上購買域名
域名解析
域名購買完成後, 需要將域名解析到實驗雲主機上,實驗雲主機的 IP 為:
<您的 CVM IP 地址>
在騰訊雲購買的域名,可以到控制檯新增解析記錄,過程可參考下面的視訊:
- 視訊 - 如何在騰訊雲上解析域名
域名設定解析後需要過一段時間才會生效,通過 ping
命令檢查域名是否生效 [?],如:
ping www.yourdomain.com
如果 ping 命令返回的資訊中含有你設定的解析的 IP 地址,說明解析成功。
注意替換下面命令中的
www.yourmpdomain.com
為您自己的註冊的域名
訪問 FTP 服務
任務時間:5min ~ 10min
FTP 服務已安裝並配置完成,下面我們來使用該 FTP 服務
訪問 FTP 服務
根據您個人的工作環境,選擇一種方式來訪問已經搭建的 FTP 服務
通過 Windows 資源管理器訪問
Windows 使用者可以複製下面的[連結]到資源管理器的位址列訪問:
ftp://ftpuser:[email protected]<您的 CVM IP 地址>
通過 FTP 客戶端工具訪問
FTP 客戶端工具眾多,下面推薦兩個常用的:
- WinSCP - Windows 下的 FTP 和 SFTP 連線客戶端
- FileZilla - 跨平臺的 FTP 客戶端,支援 Windows 和 Mac
下載和安裝 FTP 客戶端後,使用下面的憑據進行連線即可:
[主機]:
<您的 CVM IP 地址>
使用者:
ftpuser
密碼:
Password
如果能夠正常連線,那麼大功告成,您可以開始使用屬於您自己的 FTP 伺服器了!
接下來,請上傳任意一張圖片到您的 FTP 伺服器上的pub目錄下,然後,就可以在 /data/ftp/pub 中看到了。
注意: 請不要直接上傳檔案到根目錄下
,您應該選擇上傳到 pub
目錄下
如果您申請了域名,可以將連結中的 Ip 地址替換為對應的域名訪問 FTP 服務
如果您申請了域名,可以將Ip 地址替換為對應的域名作為訪問憑據
大功告成
恭喜!您已經成功完成了搭建 FTP 伺服器的實驗任務。