解决Linux vsftpd被动模式连接问题,可按以下步骤操作:
启用被动模式:编辑配置文件 /etc/vsftpd/vsftpd.conf,添加或修改以下参数:
pasv_enable=YES # 启用被动模式
pasv_min_port=10000 # 设置被动模式最小端口(建议10000+)
pasv_max_port=10100 # 设置被动模式最大端口
重启服务:sudo systemctl restart vsftpd。
配置防火墙:
sudo iptables -A INPUT -p tcp --dport 10000:10100 -j ACCEPT
sudo iptables -A OUTPUT -p tcp --sport 10000:10100 -j ACCEPT
sudo service iptables save
sudo firewall-cmd --permanent --add-port=10000-10100/tcp
sudo firewall-cmd --reload
检查内核模块:加载FTP相关内核模块(部分系统需手动加载):
sudo modprobe ip_conntrack_ftp
sudo modprobe ip_nat_ftp
验证配置:
/var/log/vsftpd.log,确认无错误信息。注意:确保被动模式端口未被其他服务占用,且客户端与服务器的网络连通正常。