基於 Ubuntu 搭建 FTP 文件服務


搭建 FTP 文件服務

安裝並啟動 FTP 服務

任務時間:5min ~ 10min

安裝 VSFTPD

使用 apt-get 安裝 vsftpd

sudo apt-get install vsftpd -y

vsftpd 是在 Linux 上被廣泛使用的 FTP 服務器,根據其[官網介紹][https://security.appspot.com/vsftpd.html],它可能是 UNIX-like 系統下最安全和快速的 FTP 服務器軟件。

啟動 VSFTPD

安裝完成后 VSFTPD 會自動啟動,通過 netstat 命令可以看到系統已經[監聽了 21 端口]

sudo netstat -nltp | grep 21

如果沒有啟動,可以手動開啟 VSFTPD 服務:

sudo systemctl start vsftpd.service

FTP 協議默認使用 21 端口作為服務端口

配置用戶訪問目錄

任務時間:5min ~ 10min

新建用戶主目錄

sudo mkdir /home/uftp

執行完后,在這里 /home/uftp [?] 就能看到新建的文件夾 uftp 了。

創建登錄歡迎文件 [?]

sudo touch /home/uftp/welcome.txt

方便用戶登錄后可以看到歡迎信息,並且確定用戶確實登錄到了主目錄上。

用戶的主目錄是用戶通過 FTP 登錄后看到的根目錄

新建用戶 uftp 並設置密碼

創建一個用戶 uftp [?]

sudo useradd -d /home/uftp -s /bin/bash uftp

為用戶 uftp 設置密碼 [?]

sudo passwd uftp

刪除掉 pam.d 中 vsftpd,因為該配置文件會導致使用用戶名登錄 ftp 失敗:

sudo rm /etc/pam.d/vsftpd

為了方便后面的實驗步驟,不建議使用其它的用戶名

請記住設置的密碼以用於后續步驟

限制該用戶僅能通過 FTP 訪問

限制用戶 uftp 只能通過 FTP 訪問服務器,而不能直接登錄服務器:

sudo usermod -s /sbin/nologin uftp

修改 vsftpd 配置

sudo chmod a+w /etc/vsftpd.conf

修改 /etc/vsftpd.conf 文件中的配置(直接將如下配置添加到配置文件最下方):

# 限制用戶對主目錄以外目錄訪問
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

# 使用utf8編碼
utf8_filesystem=YES

新建文件 /etc/vsftpd.user_list,用於存放允許訪問 ftp 的用戶:

sudo touch /etc/vsftpd.user_list
sudo chmod a+w /etc/vsftpd.user_list

修改 /etc/vsftpd.user_list ,加入剛剛創建的用戶:

示例代碼:/etc/vsftpd.user_list
uftp

設置訪問權限

設置主目錄訪問權限(只讀):

sudo chmod a-w /home/uftp

新建公共目錄,並設置權限(讀寫):

sudo mkdir /home/uftp/public && sudo chmod 777 -R /home/uftp/public

重啟vsftpd 服務:

sudo systemctl restart vsftpd.service

准備域名和證書

任務時間:15min ~ 30min

注:如果您不需要通過域名訪問 FTP 服務器則可以直接點擊“已完成,下一步”跳過域名和證書的准備環節

域名注冊

如果您還沒有域名,可以在騰訊雲上選購,過程可以參考下面的視頻。

  • 視頻 - 在騰訊雲上購買域名

域名解析

域名購買完成后, 需要將域名解析到實驗雲主機上,實驗雲主機的 IP 為:

<您的 CVM IP 地址>

在騰訊雲購買的域名,可以到控制台添加解析記錄,過程可參考下面的視頻:

  • 視頻 - 如何在騰訊雲上解析域名

域名設置解析后需要過一段時間才會生效,通過 ping 命令檢查域名是否生效 [?],如:

ping www.yourdomain.com

如果 ping 命令返回的信息中含有你設置的解析的 IP 地址,說明解析成功。

注意替換下面命令中的 www.yourmpdomain.com 為您自己的注冊的域名

訪問 FTP 服務

任務時間:5min ~ 10min

FTP 服務已安裝並配置完成,下面我們來使用該 FTP 服務

訪問 FTP 服務

根據您個人的工作環境,選擇一種方式來訪問已經搭建的 FTP 服務

通過 FTP 客戶端工具訪問

FTP 客戶端工具眾多,下面推薦兩個常用的:

  • FileZilla - 跨平台的 FTP 客戶端,支持 Windows 和 Mac
  • WinSCP - Windows 下的 FTP 和 SFTP 連接客戶端

下載和安裝 FTP 客戶端后,使用下面的憑據進行連接即可:

[主機]

<您的 CVM IP 地址>

用戶:

uftp

輸入密碼后,如果能夠正常連接,那么大功告成,您可以開始使用屬於您自己的 FTP 服務器了!

接下來,請上傳任意一張圖片到您的 FTP 服務器上的 uftp 的 public 目錄下,然后,就可以在 /home/uftp/public 中看到了。

通過 Windows 資源管理器訪問

Windows 用戶可以復制下面的[鏈接]到資源管理器的地址欄訪問:

ftp://uftp:你的密碼@<您的 CVM IP 地址>

如果您申請了域名,可以將Ip 地址替換為對應的域名作為訪問憑據

如果您申請了域名,可以將鏈接中的 Ip 地址替換為對應的域名訪問 FTP 服務

大功告成

恭喜!您已經成功完成了搭建 FTP 服務器的實驗任務。


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com