windows服务器搭建FTP服务连接报错!外部无法连接,服务器内可以连接
按照网上的教程在服务器上设置了FTP服务(假设开放了服务器的10000端口为ftp服务端口,服务器自身地址为10.0.0.1)
在服务器上用资源管理器直接访问ftp://10.0.0.1:10000,能访问到FTP服务,正确输入账号密码后进入。
在外部使用互联网域名访问ftp://www.xxx.com:10000时,正确输入账号密码后,提示
错误代码200 , 227

在网上找了很久,我看他们说要改被动ftp连接,那个设置我本身是打开的,如果关闭后,再次访问,报错信息则变为
错误代码200,501

网上继续搜信息,全都是翻来覆去的那两个设置变来变去的,但是我这边不生效,还有可能是哪里的设置原因吗?
后续发现是因为ftp服务用到两个端口,设置的端口用于登录通讯,数据传输会用到第二个端口,一般这个传输端口是随机的。
如果服务器与客户端各个端口都是通的,就不会有这个问题,否则就会导致数据传输端口两边无法互通
我的方式是用FileZilla工具重新搭了一个ftp服务,考虑到我的服务器上开放的端口是固定的(假设开放了10000和10001),因此我指定10000端口用于ftp登录通讯,10001用于被动连接时的数据传输,这样客户端登录的时候,服务器就会只返回10001端口给客户端用于数据传输,于是可以正常使用了。