项目需求:实现一个FTP服务端(linux环境下),客户端使用的是Leapftp,发现服务端是PORT模式的时候,无法连接,错误代码如下:
200 PORT command successful. Consider using PASV.
425 Failed to establish connection.
被动模式的话就是可以连接的,主动模式下就是不可以,然后笔者发现服务端的防火墙已经被关闭了。由于主动模式下,服务端的20端口需要connect客户端。windows防火墙下,对方的20端口出来的数据会被windows防火墙屏蔽掉。
1.检查服务端的防火墙是否关闭,代表数据可以出来
systemctl stop firewalld
2.windows防火墙设置入站规则如下所示:下面的192.168.136.2是服务端的ip地址,协议和端口处选择开放所有端口即可。
3.使用leapftp重新连接服务端,发现主动模式已经可以使用了: