部署了PureFTP,iptables该怎么放行被动模式?

PureFTP是目前很多Linux平台流行的FTP服务端之一,最近配置服务器使用到了PureFTP,中间也出现了各种连接问题,总之就是无法正常传输数据,防火墙也开放了21端口,但最要命的是客户端使用被动模式怎么也连不上。

我们都知道,FTP有两种传输模式:

主动模式(PORT):服务器的20端口连接客户端的一个随机端口(服务器和客户端协商的),主动模式要求客户端没有防火墙,或者客户端的防火墙(路由器)具有ALG(应用层网关)功能,防火墙会自动打开服务器请求的端口,一般CISCO和H3C的路由器都有ALG功能。主动模式需要我们手工在ftp客户端里面手工设置,默认都是被动模式。

被动模式(PSAV):服务器打开21端口,客户端连接服务器的21端口进行连接控制,然后要求服务器打开一个特定端口,客户端与服务器进行连接。

如果我们服务器开启了防火墙,或者服务器外部有防火墙,客户端将无法与服务器进行数据连接,那么我们如何既使用被动模式,又开启防火墙呢?

首先,我们修改Pureftp的配置文件/etc/pure-ftpd.conf(默认在安装目录下,也可能在其他地方,查找一下即可)

#把下面的
#   PassivePortRange 20000 30000
#修改为,即去掉注释
PassivePortRange 20000 30000

重启pureftpd服务, 另外我们要修改防火墙,开放20000-30000端口,以iptables为例:

iptabels -A INPUT -p tcp --dport 20000:30000 -j ACCEPT
service iptables save

这样就成功搞定被动模式了,用ftp客户端连接试试吧。

相关推荐:
谷歌发布了针对ARM优化的新算法,但是如果要使用 salsa20 或 chacha20 或 chacha20-ietf 算法,还是需要先安装 libsodium 。 CentOS下: yum install epel-release -y yum install libsodium -y 如果想自己 …
这是源码安装软件时配置环境用的,根据你的配置选项和你的系统情况生成makefile文件,为make 做准备。 最常用的参数就是: ./configure --prefix=xxx 若不指定prefix,则可执行文件默认放在/usr/local/bin …
如何让一个Python脚本输出的文字信息是彩色的?其实这个其实跟python无关的,跟具体所用console的类型有关系,不同的类型对应不同的控制码,如果是ansi终端,可以用ansi的控制码。 Mac或Linux终端中的颜色 …
一般我们在更换DNS源或配置了HOSTS后,刷新DNS缓存让你可以得到新的域名解析。当你无法正确访问一个新注册的域名时就可以刷新dns缓存试试,但是不同的系统如Windows、Mac OS和Linux上的方法是不一样的。 如 …
NAT可以方便的完成这种流量穿通功能,即把外网数据通过NAT(中转设备)来穿透进内网,内网数据通过NAT(中转设备)穿透出外网。 那linux下iptables如何实现nat转发?这里将以Debian7主机下的测试为例。 1、开启 …
手机扫一扫即可带走我!