在Debian上配置FTP服务器以使用被动模式,通常涉及修改vsftpd(Very Secure FTP Daemon)的配置文件。以下是详细步骤:
如果你还没有安装vsftpd,可以使用以下命令进行安装:
sudo apt update
sudo apt install vsftpd
编辑vsftpd的配置文件 /etc/vsftpd.conf:
sudo nano /etc/vsftpd.conf
找到并修改以下配置项:
pasv_enable=YES
pasv_min_port=50000
pasv_max_port=50100
pasv_enable=YES:启用被动模式。pasv_min_port 和 pasv_max_port:设置被动模式的端口范围。确保这些端口在你的防火墙中是开放的。listen=YES:启用独立模式(可选,但推荐)。listen_ipv6=NO:如果你只使用IPv4,可以禁用IPv6。chroot_local_user=YES:将本地用户限制在其主目录中(可选,但推荐)。保存并关闭配置文件后,重启vsftpd服务以应用更改:
sudo systemctl restart vsftpd
确保你的防火墙允许被动模式的端口范围。如果你使用的是ufw,可以添加以下规则:
sudo ufw allow 50000:50100/tcp
使用FTP客户端连接到你的服务器,并确保被动模式已启用。大多数FTP客户端默认使用被动模式,但你可以在客户端设置中明确指定。
例如,在FileZilla中:
你可以使用以下命令来验证被动模式是否正常工作:
sudo netstat -tuln | grep 50000
你应该看到类似以下的输出:
tcp 0 0 0.0.0.0:50000 0.0.0.0:* LISTEN
通过以上步骤,你应该能够在Debian上成功配置vsftpd以使用被动模式。