外部因特网如何访问局域网内非21端口的FTP服务器?
当前位置:点晴教程→知识管理交流
→『 技术文档交流 』
最近在折腾SERV-U和ftp,如果双方都处于不同的局域网内网时,会出现PASV模式时无法list,或者采用非标准端口21时无法list的问题,尝试出了几种方法,小结一下希望能对大家有点帮助。几种方法均在ADSL及FTP后尝试成功。我这里都是说的双方都在路由后面的情况,不在路由后面就不存在这个问题了。也许有的情况是巧合,还望大家指正。 环境:SERV-U + Windows Server 方法一、要是仅仅是需要局域网内部连接的话,先固定PASV的PORT范围,我这里假设的是2000(数据端口),然后在路由器里面映射分别映射你的通信端口(你自己的ftp端口)和数据端口(2000)。就可以内网连接了,外网要连接的话,也需要打开客户端路由的数据端口2000映射。这种情况较麻烦,而且条件较多,一般还是不用。 方法二、不要固定PASV端口,直接开启SERV-U的UPnP自动配置防火墙功能就可以了。然后在路由器里面也开启UPnP功能,并且不能映射通信端口和数据端口,否则端口被占据,UPnP无法自动配置(一开始没有发现这点,郁闷了很久,后来无意中换了个忘记映射的端口后成功才发现问题)。内网和外网就都可以采用主动和被动方式进行连接了。条件要求较少,只要路由带UPnP功能就行了。现在感觉采用 这种方式比较好。 方法三、开启路由里面的DMZ虚拟主机功能。这种情况只适用于内网只有1台pc需要开放为ftp的情况,但是直接暴露给WAN的话还是存在不安全因素。内网和外网就都可以采用主动和被动进行连接了。上面方法二不行时,适用。 补充说明一下:这个小结主要是针对于部分不支持非21端口PASV模式的路由器的(最近换了3个路由器,一个D-LINK,一个TP-LINK和一个TENDA,只有D-LINK的支持非标准端口的pasv,另外两个失败)。 该文章在 2012/12/31 0:07:30 编辑过
|
关键字查询
相关文章
正在查询... |