外网端口映射后使用win10命令行能够连接FTP但是不能使用ls、dir命令以及上传文件

本文档描述了一位用户在CentOS7云服务器上配置vsftpd FTP服务并尝试通过外网访问时遇到的问题。服务器端口映射正常,但外网客户端在被动模式下执行ls命令时失败,而内网访问则无问题。问题可能与外网端口与内网端口不一致有关。
摘要由CSDN通过智能技术生成

一、首先记录一下环境信息

1、服务器操作系统是CentOS7,具体信息见截图,并且这是华为云的一台云服务器,这台服务器没有开启防火墙并且也没有安装iptables,是不是这种云服务器都有统一的防火墙做防护呢?

2、使用vsftpd提供FTP服务,配置为“被动模式”,命令端口是20222,同时为被动模式开放的一组端口如截图所示:

3、申请开通外网端口到内网端口的映射,按理来说开通映射后就可以外网对应端口上面的请求转发到内网端口上面的。端口映射情况如下(xxx是外网、yyy是内网IP):

xxx.xxx.xxx.xxx:50001    yyy.yyy.yyy.yyy:5001

xxx.xxx.xxx.xxx:50002    yyy.yyy.yyy.yyy:5002

xxx.xxx.xxx.xxx:50003    yyy.yyy.yyy.yyy:5003

为了验证端口是否映射成功,使用nginx监听了一个内网端口5001,然后在外网使用IP加外网端口访问nginx,nginx配置如下:

使用外网IP:外网端口 访问nginx是成功的

至此,可以确定网络都是通的。

二、使用win10命令行登录FTP进行操作(外网)

打开win10命令行之后,使用ftp服务器的外网IP可以正常登录到FTP,然后切换为被动模式,使用 ls 命令回车后就是漫长的等待最后报错:425 Failed to establish connection. ,至此问题已经复现出来了

三、使用内网的另外一台机器登录FTP进行操作

这台机器和目标FTP服务器在一个局域网下面,通过下面截图可以看到能够正常访问,ls命令可以正常使用

四、问题总结

在步骤二中验证了网络是通的,只是端口映射时外网端口和内网端口不一致,vsftpd服务正常且开启的是被动模式,分配的一组端口有了外网映射。在win10命令行下通过外网可以正常登录,但是就是不能使用ls命令、上传文件。内网可以正常访问。

如果端口映射时 外网端口和内网端口(vsftpd配置的一组端口)一致是不是就可以解决问题了呢? 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值