如何在 Ubuntu 上使用 TLS 安裝和設置 ProFTPD

如何在 Ubuntu 上使用 TLS 安裝和設置 ProFTPD

文件傳輸協議 (FTP) 是一種流行的輕量級協議,用於通過網絡傳輸文件。雖然它是一種有效的數據傳輸機制,但它有一個缺點:數據以純文本形式傳輸和接收。這意味著數據傳輸未加密,可能會遭到破壞。

ProFTPD 等現代 FTP 服務器支持 SSL/TLS。通過添加安全元素,這使得兩個系統之間的文件傳輸不僅高效而且安全。讓我們探討如何在 Ubuntu 22.04 上使用 TLS 安裝和設置 ProFTPD。

什麼是 ProFTPD?

ProFTPD 是一個開源且可靠的 FTP 服務器,允許您在本地計算機和 Web 服務器之間建立 FTP 連接。它易於配置並與 Unix/Linux 服務器兼容。

安裝 ProFTPD 的先決條件

在開始安裝 ProFTPD 之前,您必須滿足以下要求:

  1. Ubuntu 服務器 22.04
  2. 服務器上的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

Ubuntu 的終端顯示 ProFTPD 的活動狀態

如您所見,ProFTPD 守護程序處於活動狀態並且運行良好。

在 Linux 上配置 ProFTPD

您將在/etc/proftpd目錄中找到 ProFTPD 的配置文件。通過運行以下命令使用 nano 打開文件:

sudo nano /etc/proftpd/proftpd.conf

Proftpd 的配置文件顯示當前配置

您會在文件中找到各種指令。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

顯示 Proftpd 未運行的命令行

您現在可以使用以下 Linux 命令從計算機中刪除 ProFTPD:

sudo apt-get autoremove proftpd-dev
sudo apt-get purge proftpd-basic

這些命令將從您的系統中完全刪除 ProFTPD。

使用配置了 TLS 的 FTP 服務器安全地傳輸文件

ProFTPD 不僅提供安全性,而且確保數據交換快速高效。ProFTPD 最好的一點是它為用戶提供了很多配置選項。

雖然 FTP 是一種可靠的文件傳輸方式,但您還可以使用其他方法來達到相同的目的。確保選擇適合您系統的正確技術,讓事情變得簡單。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *