如何在 Ubuntu 上使用 TLS 安裝和設置 ProFTPD
文件傳輸協議 (FTP) 是一種流行的輕量級協議,用於通過網絡傳輸文件。雖然它是一種有效的數據傳輸機制,但它有一個缺點:數據以純文本形式傳輸和接收。這意味著數據傳輸未加密,可能會遭到破壞。
ProFTPD 等現代 FTP 服務器支持 SSL/TLS。通過添加安全元素,這使得兩個系統之間的文件傳輸不僅高效而且安全。讓我們探討如何在 Ubuntu 22.04 上使用 TLS 安裝和設置 ProFTPD。
什麼是 ProFTPD?
ProFTPD 是一個開源且可靠的 FTP 服務器,允許您在本地計算機和 Web 服務器之間建立 FTP 連接。它易於配置並與 Unix/Linux 服務器兼容。
安裝 ProFTPD 的先決條件
在開始安裝 ProFTPD 之前,您必須滿足以下要求:
- Ubuntu 服務器 22.04
- 服務器上的root權限
如果您的系統滿足這些要求,您就可以安裝 ProFTPD 服務器。
第 1 步:更新和升級 Ubuntu
要安裝 ProFTPD,您首先需要通過命令行更新 Ubuntu。您可以通過執行以下命令來實現此目的:
sudo apt-get update -y
update 命令只更新系統包列表。要升級軟件包,請發出以下命令:
sudo apt-get upgrade -y
要使升級更改生效,您需要使用以下命令重新啟動 Linux 系統:
reboot
第 2 步:在 Ubuntu 上安裝 ProFTPD 服務器
現在是安裝 ProFTPD 的時候了。要安裝服務器,請運行以下命令:
sudo apt install proftpd -y
安裝服務器後,驗證它是否已正確安裝。驗證安裝的一種方法是檢查已安裝服務的版本。
sudo proftpd --version
如果終端返回版本號,這意味著 ProFTPD 安裝成功,服務器現在存在於您的系統中。
第 3 步:啟動並啟用 ProFTPD 服務
您現在可以使用 ProFTPD。但首先,您需要通過運行以下命令來啟動它:
sudo systemctl start proftpd
完成後,運行以下命令以啟用它:
sudo systemctl enable proftpd
服務啟動後,檢查 ProFTPD 的狀態以確保它運行正常。輸入以下命令來執行此操作:
sudo systemctl status proftpd
如您所見,ProFTPD 守護程序處於活動狀態並且運行良好。
在 Linux 上配置 ProFTPD
您將在/etc/proftpd目錄中找到 ProFTPD 的配置文件。通過運行以下命令使用 nano 打開文件:
sudo nano /etc/proftpd/proftpd.conf
您會在文件中找到各種指令。Default Root 指令告訴 FTP 服務器從哪裡提供文件。
DefaultRoot /home/Linux/Docs
您還可以使用 DefaultRoot 指令將用戶限制在特定目錄中,如下所示:
DefaultRoot /home/linux Tom
DefaultRoot / Emma
通過這些配置,Tom 將登錄到/home/linux。但是,Emma 將有權訪問整個系統。
您可以使用 ServerName 指令為服務器設置名稱,如下所示:
ServerName "My ProFTPD"
為 ProFTPD 服務器創建用戶
為安全起見,讓 FTP 服務器上的用戶具有受限權限是一種很好的做法。用戶應該只能訪問他們的主目錄,他們可以通過下載或上傳文件來管理文件。
借助下面提到的命令創建一個 ProFTPD 用戶。確保在命令中提供實際用戶名來代替username。
sudo useradd -m username
要設置用戶密碼,請運行以下命令:
sudo passwd username
使用 ProFTPD 配置 SSL/TLS
為了保護 FTP 連接,您將使用 SSL/TLS。在這裡您將看到如何使用 SSL 證書配置 ProFTPD。
要為 ProFTPD 服務器生成證書,您的系統上需要 OpenSSL。運行此命令以安裝 OpenSSL:
sudo apt-get install openssl -y
為 ProFTPD 服務器生成證書
成功安裝 OpenSSL 後,您可以使用以下命令為您的服務器生成證書:
sudo openssl req -x509 -newkey rsa:1024 -keyout /etc/ssl/private/proftpd.key -out /etc/ssl/certs/proftpd.crt -nodes -days 365
通過執行上述命令,您要求 OpenSSL 為您提供 ProFTPD 服務器的證書和私鑰。該證書的有效期為 365 天。
發出命令後,系統會要求您提供證書的詳細信息,通常是組織名稱和地址。
接受詳細信息後,您將獲得證書和密鑰。現在通過發出以下兩個命令將兩個文件的權限更改為只讀和寫入:
sudo chmod 600 /etc/ssl/private/proftpd.key
sudo chmod 600 /etc/ssl/certs/proftpd.crt
使用以下命令打開 ProFTPD 配置文件:
sudo nano /etc/proftpd/proftpd.conf
找到以下行並通過刪除開頭的井號 (#)取消註釋:
Include /etc/proftpd/tls.conf
現在關閉文件並保存。接下來,使用以下命令打開 TLS 配置文件:
sudo nano /etc/proftpd/tls.conf
現在在文件中找到以下片段並取消註釋:
<IfModule mod_tls.c>
TLSEngine on
TLSLog /var/log/proftpd/tls.log
TLSProtocol SSLv23
和:
TLSRSACertificateFile /etc/ssl/certs/proftpd.crt
TLSRSACertificateKeyFile /etc/ssl/private/proftpd.key
也取消註釋這兩行:
TLSOptions AllowClientRenegotiations
和:
TLSRequired on
保存並關閉文件後,重新啟動 ProFTPD 服務以使更改生效:
sudo systemctl restart proftpd
如何在 Ubuntu 上卸載 ProFTPD
要從您的系統中刪除 ProFTPD,您首先需要停止該服務。
sudo systemctl stop proftpd
您現在可以使用以下 Linux 命令從計算機中刪除 ProFTPD:
sudo apt-get autoremove proftpd-dev
sudo apt-get purge proftpd-basic
這些命令將從您的系統中完全刪除 ProFTPD。
使用配置了 TLS 的 FTP 服務器安全地傳輸文件
ProFTPD 不僅提供安全性,而且確保數據交換快速高效。ProFTPD 最好的一點是它為用戶提供了很多配置選項。
雖然 FTP 是一種可靠的文件傳輸方式,但您還可以使用其他方法來達到相同的目的。確保選擇適合您系統的正確技術,讓事情變得簡單。
發佈留言