NAT后的FTP Server如何配置

今天遇到一个问题:公司开发的系统,在客户机房上线后,因为FTP服务器不能直接挂接在外网上,必须通过在路由器上进行NAT映射方式。

假设我们的路由器外网IP为1.2.3.4,FTP的内网IP为192.168.1.100,FTP的端口号为10000。采用FileZilla Server作为FTP服务器。

此时,需要在路由器上开放10000端口,映射到FTP的IP和端口上。

FileZilla Server设置为PASV模式,端口设置为10000-10000,指定IP为1.2.3.4。

在外网,用FileZilla Client登录,因Client默认为PASV模式,发现可以Log on,但无法实现数据传输。修改为PORT模式后,就可以正常进行传输了。

通过在手机上的一个APP进行FTP连接,因为默认为PASV模式,同样可以Log on,但无法实现数据传输。修改为PORT模式后,发现还是不能正常传输数据。

以前没有仔细研究过类似问题,正好借此机会深入了解下PASV和PORT到底有啥区别。假设C为Client,S为Server。

PASV:当C向S连接后,S会发信息给客户端C,这个信息是(S在本地打开了一个端口M,你现在来连接我吧)。当C收到这个信息后,就可以向S的M端口进行连接,连接成功后,数据连接也建立了。

PORT:当C向S连接后,C会发送一条命令告诉S(我在本地打开了一个端口N在等着你进行数据连接)。当S收到这个命令后 就会向客户端打开的那个端口N进行连接,这种数据连接就生成了。

理解了原理之后,我们在看看实际配置的情况。显然,在FileZilla Server上,只指定10000是不行的,需要给定一个连续的端口范围,比如10000-10005,然后在路由器上对上述端口范围也要进行映射。

尝试此种方案后,问题顺利解决。

为何不采用PORT模式呢?PORT模式最大的问题是,如果FTP Client同样位于NAT之后,显然从S到C的信道也是不通的。

为避免这种局限性,采用PASV是合理的选择。

时间: 2024-10-04 18:09:02

NAT后的FTP Server如何配置的相关文章

修改服务器名后,sql server的配置处理

1.确认SQL数据库实例服务器名和服务器名一致 use master go select @@servername select serverproperty('servername') ------ IF serverproperty('servername')<>@@servername BEGIN DECLARE @server SYSNAME SET @[email protected]@servername EXEC sp_dropserver @[email protected]

linux下配置FTP Server

FTPServer RHEL5.1_A FTP Server(VM1) ---------  (VM1)RHEL5.1_B FTP Client 192.168.10.254                       C   真实机Win7 Client 实验一:搭建简单的FTP服务器 实验要求: 配置可匿名上传FTP服务 服务器的搭建 1.安装软件包 [[email protected] Server]#rpm -ivh vsftpd-2.0.5-28.el5.x86_64.rpm 或者用:

SQL Server 安装好后 Always On群组配置

需要对SQL Server必要的端口打开Windows防火墙的入站规则,比如TCP- 1433端口等. 特别注意:由于AG默认需要用到TCP-5022端口,所以该端口务必保证在Windows防火墙中开启,允许其入站访问. 确认 SQL Server安装完成后 为高可用性组配置SQL Server 2016数据库引擎服务. 1)在"开始"菜单中点击"所有程序"-"Microsoft SQL Server 2016"-"配置工具"

[Windows Server 2003] IIS自带FTP安装及配置方法

★ 欢迎来到[护卫神·V课堂],网站地址:http://v.huweishen.com★ 护卫神·V课堂 是护卫神旗下专业提供服务器教学视频的网站,每周更新视频.★ 本节我们将带领大家:IIS6.0自带FTP安装及配置方法·IIS自带的FTP服务是最安全的,不会像Serv-U那样存在各种漏洞:但其配置过程也比较复杂.·本节将以虚拟目录方式,实现多个FTP帐户,并且每个帐户都相互隔离. 1.安装FTP服务 ·检查IIS是否已安装FTP服务,如果没有,先到http://soft.huweishen.

windows server 2012 配置多用户ftp服务器配置注意点

1.ftp根目录配置"FTP授权规则"为: 2.配置"FTP用户隔离"为: 3.配置"FTP目录浏览"为: 4.ftp虚拟目录"FTP授权规则"配置为:

ftp server源代码分析20140602

当前是有些工具比如apktool,dextojar等是可以对我们android安装包进行反编译,获得源码的.为了减少被别人破解,导致源码泄露,程序被别人盗取代码,等等.我们需要对代码进行混淆,android的sdk中为我们提供了ProGrard这个工具,可以对代码进行混淆(一般是用无意义的名字来重命名),以及去除没有使用到的代码,对程序进行优化和压缩,这样可以增加你想的难度.最近我做的项目,是我去配置的混淆配置,因此研究了一下,这里分享一下. 如何启用ProGuard ant项目和eclipse

LAMP环境搭建 Linux/SSH/FTP server

LAMP:linux + apache +mysql+php 附:SSH/FTP server 1.安装Ubuntu server 请参考官方文档 http://www.ubuntu.org.cn/download/server 2.修改root账户密码 [su/sudo] 打开终端输入: sudo passwd root ---输入当前账号密码 ---输入新root密码 ---再次输入新root密码 3.安装SSH服务 打开终端输入: sudo apt-get update ------更新软

centos 安装FTP server详情(转)

centos 安装FTP server详情 分类: linux 2013-12-27 16:45 227人阅读 评论(0) 收藏 举报 我们这里以安装vsftpd 服务器端为例子: 1.进入到centos 终端上 首先执行 yum search vsftpd 查看安装软件名字; 2.然后安装 列出来的软件名,首选第一个 yum install vsftpd,开始执行安装 3.安装好后通过 service vsftpd status 查看ftp 运行状态 如果没运行 可以使用 service vs

基于JMeter的Quick Easy FTP Server性能测试

FTP性能测试 1.引言 1.1背景说明 本测试选用的是一个小型的FTP服务器软件:Quick Easy FTP Server.Quick Easy FTP Server是一个全中文的FTP服务器软件,反应迅速,操作方便,实现了标准FTP服务器所具有的功能. 该软件具有以下特点:1.软件安装程序极小,但性能毫不逊色于专业的那些FTP服务器软件2.功能全面.具备完整的帐户管理,便捷的服务器配置,安全性设置,在线用户信息, 服务器日志,实时数据统计,检软件界面查更新一应俱全3.支持断点续传4.完整的