开发者社区> 问答> 正文

ftp怎么都连不上

之前一直好好的,也没动,安全组开放21,防火墙也放行21,还是连不上,何故?

展开
收起
司马清源 2018-01-23 22:36:26 4476 0
4 条回答
写回答
取消 提交回答
  • 超过10年通信设备研发,精通网络传输,专注于跨国网络问题解决。
    可以试试镭速RaySync传输软件,完全免费,传输速度更快更稳定。   现在活动中,前100名用户使用还有惊喜奖品。
    https://bbs.aliyun.com/read/574561.html?spm=a2c4e.11155512.0.0.PIsKVN

    ftp server 默认使用21端口,完成ftp 指令发送,实际的文件传输,需要额外开放端口段来进行。
    楼上版主有回答了,额外的端口段需要:
    1、在ftp server上面配置  数据传输端口段,拿vsftpd来说,需要配置下面几个参数
         pasv_enable=YES
      pasv_min_port=port number
      pasv_max_port=port number
    2、ECS机器所在安全组需要开放这些端口段
    3、ECS Linux主机防火墙需要开放这些端口段

    从楼主的截图来看,应该是使用了FileZilla FTP客户端,可以把FileZilla指令日志栏里面的 详细日志 打开,如下图,
    [attachment=139963]

    这样子就能够看到ftp server pasv 指令返回的端口是哪一个,如下图所示,  端口计算方法是(倒数第二个数字*255 + 最后一个数字)。然后把对应的端口段打开。
    下面的例子中, MLSD用于列出服务器目录,目录信息数据传输端口会使用 (221*255+92 = 56447) 端口。
    [attachment=139965]


    总之,ftp配置复杂,防火墙配置更麻烦,如果不是历史原因需要使用的话,真心建议楼主使用上面我推荐的镭速RaySync产品。

    2018-01-26 19:18:44
    赞同 展开评论 打赏
  • 旺旺:nectar2。
    版主回复:

    人个建议是使用sftp代替ftp使用,方便些。

    如果一定要用FTP,请在CentOS的防火墙及ECS实例安全组规则里,允许外网访问21端口和FTP服务端可能使用到的被动端口范围。
    2018-01-26 11:29:00
    赞同 展开评论 打赏
  • 回 1楼火蓝云的帖子
    ftp客户端已经使用主动连接
    2018-01-25 15:39:31
    赞同 展开评论 打赏
  • 乐善好施
    FTP选择 主动链接,被动链接的话 还需要开放被动端口
    2018-01-24 09:13:13
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载