在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连接以验证配置是否正确。