如何在 Ubuntu Linux 中配置和使用 FTP 服務器

目錄

介紹

在本文中,我們將向您展示如何在計算機上設置和使用 FTP 服務器。UbuntuLinux。 我們還將介紹一些幫助您入門的基本設置和安全步驟。

更新系統包

在開始之前,最好將系統包更新到最新版本。 您可以通過運行以下命令來執行此操作:

                      
sudo apt-get update
sudo apt-get upgrade

                    

在 Ubuntu 上安裝 vsftpd 服務器

現在您的系統是最新的,您可以通過運行以下命令來安裝 vsftpd 服務器包:

                      
sudo apt-get install vsftpd

                    

備份配置文件

在對配置文件進行任何更改之前,最好進行備份以防出現問題。 您可以通過運行以下命令來執行此操作:

                      
sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.bak

                    

創建 FTP 用戶

現在安裝了 vsftpd 服務器,您需要創建一個用於連接到服務器的用戶。 您可以通過運行以下命令來執行此操作:

                      
sudo adduser ftpuser

                    

系統將提示您輸入用戶密碼。 創建用戶後,您需要通過運行以下命令將其添加到 FTP 組:

                      
sudo usermod -a -G ftp ftpuser

                    

配置防火牆以允許 FTP 流量

如果您的 Ubuntu 服務器上啟用了防火牆,則必須允許 FTP 流量通過它。 您可以通過運行以下命令來執行此操作:

                      
sudo ufw allow ftp

                    

連接到 Ubuntu FTP 服務器

現在服務器已設置,您可以使用 FTP 客戶端連接到它。 對於此示例,我們將使用 Filezilla 客戶端。

首先,打開 Filezilla 並單擊“站點管理器”圖標。

接下來,單擊“新建站點”按鈕並輸入以下信息:

  • 主機:輸入服務器的 IP 地址或主機名
  • 端口:輸入 21
  • 協議:選擇“FTP – 文件傳輸協議”
  • 加密:選擇“僅使用普通 FTP(不安全)”
  • 登錄類型:選擇“普通”
  • 用戶:輸入您之前創建的 FTP 用戶名
  • 密碼:輸入FTP用戶的密碼

現在單擊“連接”按鈕,您應該連接到您的 FTP 服務器。

如何通過命令行連接到FTP服務器

如果您更喜歡使用命令行,您可以通過運行以下命令連接到您的 FTP 服務器:

                      
ftp hostname

                    

系統將提示您輸入 FTP 用戶的密碼。 登錄後,您將進入 FTP 提示符,您可以在其中輸入各種命令。 寫 help 查看可用命令列表。

如何通過 GUI 連接到 FTP 服務器

如果您使用的是 Linux 桌面,則可以使用 Filezilla 或 Nautilus 等 GUI 客戶端連接到 FTP 服務器。

要使用 Filezilla 進行連接,請打開程序並單擊“站點管理器”圖標。

接下來,單擊“新建站點”按鈕並輸入以下信息:

  • 主機:輸入服務器的 IP 地址或主機名
  • 端口:輸入 21
  • 協議:選擇“FTP – 文件傳輸協議”
  • 加密:選擇“僅使用普通 FTP(不安全)”
  • 登錄類型:選擇“普通”
  • 用戶:輸入您之前創建的 FTP 用戶名
  • 密碼:輸入FTP用戶的密碼

現在單擊“連接”按鈕,您應該連接到您的 FTP 服務器。

要使用 Nautilus 進行連接,請打開程序並單擊“文件”菜單,然後選擇“連接到服務器”。

在“服務器地址”字段中,輸入以下信息:

  • 服務類型:選擇“FTP”
  • 服務器:輸入服務器的 IP 地址或主機名
  • 端口:輸入 21
  • 用戶名:輸入您之前創建的 FTP 用戶名
  • 密碼:輸入FTP用戶的密碼

現在單擊“連接”按鈕,您應該連接到您的 FTP 服務器。

配置和保護 Ubuntu vsftpd 服務器

現在您已經啟動並運行了一個基本的 FTP 服務器,讓我們看看一些可用的配置選項。

更改默認目錄

默認情況下,vsftpd 服務器會將其目錄更改為 /var/ftp 登錄時的目錄。 如果你想改變這個,你可以編輯 /etc/vsftpd.conf 文件並更改以下行:

                      
#chroot_local_user=YES

                    

                      
chroot_local_user=YES

                    

您還需要創建要使用的新目錄。 例如如果你想使用 /home/ftpuser 目錄,您可以通過運行以下命令來執行此操作:

                      
sudo mkdir /home/ftpuser

                    

驗證 FTP 用戶

默認情況下,vsftpd 服務器將允許任何人使用任何用戶名和密碼登錄。 如果您只想限制特定用戶的訪問權限,您可以編輯 /etc/vsftpd.conf 文件並更改以下行:

                      
#anon_upload_enable=YES

                    

                      
anon_upload_enable=NO

                    

您還需要取消註釋以下行:

                      
#local_enable=YES

                    

如何配置匿名FTP登錄

如果你想允許匿名 FTP 登錄,你可以編輯 /etc/vsftpd.conf 文件並更改以下行:

                      
#anon_upload_enable=YES

                    

                      
anon_upload_enable=YES

                    

您還需要取消註釋以下行:

                      
#anon_mkdir_write_enable=YES

                    

如何更改默認的FTP監聽端口

默認情況下,vsftpd 服務器在端口 21 上偵聽 FTP 流量。 如果你想改變這個,你可以編輯 /etc/vsftpd.conf 文件並更改以下行:

                      
#listen=YES

                    

                      
listen=NO

                    

您還需要取消註釋以下行並輸入新的端口號:

                      
#listen_port=

                    

安全FTP

為保護您的 FTP 服務器,您可以做的最重要的事情之一就是加密流量。 您可以使用 SSL/TLS 來完成。 為此,您需要通過運行以下命令生成自簽名 SSL 證書:

                      
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pem

                    

系統將要求您輸入有關證書的一些信息。 生成證書後,您需要編輯 /etc/vsftpd.conf 文件並更改以下行:

                      
#ssl_enable=NO
#rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
#rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key

                    

                      
ssl_enable=YES
rsa_cert_file=/etc/ssl/private/vsftpd.pem
rsa_private_key_file=/etc/ssl/private/vsftpd.pem

                    

您還需要取消註釋以下行:

                      
#force_local_data_ssl=YES

                    

限制用戶訪問

如果您想限制用戶對您的 FTP 服務器的訪問,您可以創建一個用戶列表文件。 為此,您需要編輯 /etc/vsftpd.conf 文件並更改以下行:

                      
#userlist_deny=NO

                    

                      
userlist_deny=YES

                    

您還需要取消註釋以下行並輸入用戶列表文件的路徑:

                      
#userlist_file=/etc/vsftpd.userlist

                    

用戶列表文件是一個包含 FTP 用戶列表的簡單文本文件,每行一個。 您可以通過運行以下命令來創建此文件:

                      
sudo nano /etc/vsftpd.userlist

                    

將以下行添加到文件中:

                      
ftpuser

                    

保存文件並關閉。

使用 FTPS 加密流量

如果要加密 FTP 服務器和客戶端之間的流量,可以使用 FTPS。 為此,您需要編輯 /etc/vsftpd.conf 文件並更改以下行:

                      
#ssl_enable=NO
#allow_anon_ssl=NO
#force_local_data_ssl=NO
#force_local_logins_ssl=NO

                    

                      
ssl_enable=YES
allow_anon_ssl=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES

                    

您還需要取消註釋以下行:

                      
#rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem

                    

FTP 連接錯誤“連接被拒絕”故障排除

如果您在連接到 FTP 服務器時遇到問題,您可能會看到“連接被拒絕”錯誤。 這通常是由防火牆阻止 FTP 流量引起的。 要解決此問題,您需要允許 FTP 流量通過防火牆。

如果您使用的是 UFW 防火牆,則可以通過運行以下命令來執行此操作:

                      
sudo ufw allow ftp

                    

如果您使用的是其他防火牆,則需要查閱文檔以獲取有關如何允許 FTP 流量的說明。

結論

在本文中,我們將向您展示如何在 Ubuntu Linux 上設置和使用 FTP 服務器。 我們還介紹了一些幫助您入門的基本設置和安全步驟。

相關文章