在Debian上配置FTP服務器以支持被動模式(PASV),通常使用vsftpd作為FTP服務器軟件。以下是詳細的步驟來配置vsftpd以支持被動模式:
首先,確保你已經安裝了vsftpd。如果沒有安裝,可以使用以下命令進行安裝:
sudo apt update
sudo apt install vsftpd
編輯vsftpd的配置文件 /etc/vsftpd.conf:
sudo nano /etc/vsftpd.conf
在配置文件中,找到并修改以下參數:
listen=YES:確保vsftpd在監聽模式。listen_ipv6=NO:如果你使用的是IPv4,可以禁用IPv6。pasv_enable=YES:啟用被動模式。pasv_min_port=1024:設置被動模式的最小端口號。pasv_max_port=1048:設置被動模式的最大端口號。例如:
listen=YES
listen_ipv6=NO
pasv_enable=YES
pasv_min_port=1024
pasv_max_port=1048
確保你的防火墻允許被動模式的端口范圍。如果你使用的是ufw(Uncomplicated Firewall),可以添加以下規則:
sudo ufw allow 1024:1048/tcp
如果你使用的是iptables,可以添加以下規則:
sudo iptables -A INPUT -p tcp --dport 1024:1048 -j ACCEPT
保存并關閉配置文件后,重啟vsftpd服務以應用更改:
sudo systemctl restart vsftpd
使用FTP客戶端連接到你的服務器,并確保被動模式已啟用。大多數FTP客戶端默認使用被動模式,但你可以手動設置以確保:
PASV 命令(如果客戶端支持)。pasv_min_port 和 pasv_max_port 之間。根據需要,你還可以進行其他配置,例如:
write_enable=YES:允許上傳文件。local_enable=YES:允許本地用戶登錄。chroot_local_user=YES:將本地用戶限制在其主目錄中。通過以上步驟,你應該能夠在Debian上成功配置vsftpd以支持被動模式。確保防火墻規則允許被動模式的端口范圍,并測試FTP連接以驗證配置是否正確。