zoukankan      html  css  js  c++  java
  • 【 VSFTPD 】ftp 客户端问题

    网络环境:

      两个独立的内网环境,前端都有路由和防火墙的管控。要在这两个独立的内网使用ftp通过互联网进行通信。

      首先,ftp server 服务端口默认修改为:2100 数据端口修改为:21000

      将这两个内网服务器端口通过路由映射到公网端口。

      ftp server 使用的vsftpd的被动模式。

        被动模式:

          命令连接: 客户端大于1024端口 --> 服务器端21端口

          数据连接: 客户端大于1024端口 --> 服务器端被动端口

      我这里 FTP默认端口2100  数据端口设置为21000  客户端通过ftp命令连接出现如下情况。

    客户端命令如下:

    [root@localhost ~]# ftp (公网IP) 2100
    Connected to [公网IP] (公网IP).
    220 (vsFTPd 2.2.2)
    Name ([公网IP]:root): ftp用户名
    331 Please specify the password.
    Password:
    230 Login successful.
    Remote system type is UNIX.
    Using binary mode to transfer files.
    ftp> dir
    227 Entering Passive Mode (10,0,10,5,82,8).
    ftp: connect: Connection timed out  # 这里无法查看数据,也就是数据端口无法连接,通过上面的连接查看,直接发送到10.0.10.5 2100 这样显示是无法连接内网IP的。
    ftp> 

    通过以上事件,得知问题出在无法连接数据端口上。研究了很久,windows下通过ftp工具能够正常连接。但是cmd下ftp命令和linux下ftp命令均出现这种情况。

    最后得知Linux 下 lftp同样可以进行ftp连接。于是就进行了尝试,结果如下:

    可以看到这次,无论是命令连接还是数据连接socket都是正确的。

    查看文件同样也OK了。 这算是踩了一个Linux ftp客户端使用的坑。

  • 相关阅读:
    01-文件系统
    适配器模式,新老系统兼容
    01-Entity FrameWork如何控制数据的变化
    .Net实战之反射操作篇
    .Net实战之反射相关类之间的人体经络关系
    .Net实战之反射外卖计费
    [转]UINavigationController 返回的方法汇总
    [转]AFNetWorking使用笔记
    vue----子组件引用vux popup mask遮罩在最上层解决办法 z-index问题
    vue系列---vue项目(已安装vuex)中引入jquery
  • 原文地址:https://www.cnblogs.com/hukey/p/5504208.html
Copyright © 2011-2022 走看看