问题描述:
1. 按照正常流程在centos7中安装ftp,配置vsftpd.conf,创建ftp用户
2. 在ftp服务器本地登录可以正常操作
3. 在一台远程linux服务器上登录,提示227,并且一直不往下执行
4. 使用python3开发的ftp操作程序,执行,提示227,并且一直不往下执行
对应上面描述的第三点,截图
对应上面描述的第四点,截图
问题处理:
修改vsftpd.conf就可以
主要修改点
1. 只能配置一种模式,我这边验证了,配置被动模式可以成功,主动模式一直没有成功,报错500 Illegal PORT command. 该报错我尝试了各种方法,均无法解决,最终,使用被动模式。切忌不要两种模式都打开,我尝试了无法成功
2. 将listen设置为YES;listen_ipv6设置为NO; 增加一行pasv_address,值为ftp服务器对应的外网IP
以下vsftpd.conf的全文
如果这三条缺少任何一条,都不能成功
我在listen_ipv6没有设置为NO,只增加了pasv_address=x.x.x.x时,报错的结果是227 Entering Passive Mode (0,0,0,0,41,106) ,IP信息变成了0,0,0,0
重启 systemctl restart vsftpd.service 如果修改后启动vsftpd失败,说明vsftpd.conf没有修改正确,一定要这三条一起存在,并且这三条下面的配置必须符合被动模式的配置
以下是启动报错截图