使用Pureftpd在局域网内搭建ftp服务器的配置问题总结

查看原文:http://www.sijitao.net/1869.html
Pureftpd的安装很简单,具体怎么安装这里就不说了。之前我的内网环境中已经有一台用pureftpd搭建的ftp服务器,现在的要求是把这个ftp共享给外部使用。外网FTP我使用的是被动传输模式,规划被动模式使用的端口范围50000到50100 。FTP和一般的端口映射有些区别,需要分别映射控制端口和数据端口。

FTP主动模式和被动模式具体可以参考这篇文章:http://www.sijitao.net/1874.html

内网的环境大致如下:

20141231113239

把192.168.188.104这台ftp服务器映射给外网,必须经过防火墙和路由器。

先修改pureftpd配置,指定被动传输端口为50000~50100 。

# Port range for passive connections replies. - for firewalling.

PassivePortRange          50000 50100

然后添加iptables防火墙端口转发规则。

iptables -t nat -A PREROUTING -d 192.168.178.100 -p tcp --dport 18021 -j DNAT --to-destination 192.168.188.104:21
iptables -t nat -A POSTROUTING -d 192.168.188.104 -p tcp --dport 21 -j SNAT --to 192.168.188.1
iptables -t nat -A PREROUTING -d 192.168.178.100 -p tcp --dport 50000:50100 -j DNAT --to-destination 192.168.188.104
iptables -t nat -A POSTROUTING -d 192.168.188.104 -p tcp --dport 50000:50100 -j SNAT --to 192.168.188.1

接着在路由器上添加端口转发。

本来以为这样外网就可以访问这台FTP服务器了,但是我碰到一个奇怪的现象,FlashFXP可以访问,而windows的资源管理器不行。

20141231114554

最后我修改了pureftpd的配置,把ForcePassiveIP这项强制配上内网的公网IP地址,重启ftp后资源管理器就可以访问外网的ftp了。

# Force an IP address in PASV/EPSV/SPSV replies. - for NAT.
# Symbolic host names are also accepted for gateways with dynamic IP
# addresses.

ForcePassiveIP                xxx.xxx.xxx.xxx

外网被动模式配置完成,但是内网现在只能使用FlashFXP客户端的主动模式来连接了。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值