lyrgwlr 2019-12-03
记一次最近碰到的ftp连接超时问题,这个问题还是很常见的,也是很多朋友经常碰到的ftp问题,这里前提是网络防火墙:已开通20、21端口。
报错:ftp: connect: 连接超时
可以发现可以连接ftp服务器,但是输命令就会提示连接超时了。
1、因为ftp server可能每次开启不同的端口来传输数据,但是在linux上,由于安全限制,可能某些端口没有开启,所以就出现阻塞。
2、ftp的端口号20、21一个是数据端口,一个是控制端口,控制端口一般为21,而数据端口不一定是20,这和FTP的应用模式有关,如果是主动模式,应该为20,如果为被动模式,由服务器端和客户端协商而定。21控制端口激活后,数据端口如果长时间进行数据操作,到达服务器设定的超时时间,自动断开连接。
1、确保服务器防火墙关闭
systemctl status firewalld
2、修改服务端ftp配置为主动模式
#vi /etc/vsftpd/vsftpd.cof #主动登录 connect_from_port_20=YES #是否允许主动登录、数据传输端口为20(防火墙必须开放端口20) 【解决访问ftp超时连接】 pasv_enable=NO #是否被动登录,关闭被动登录 【解决ftp主动连接、被动连接的问题】 #被动登录 #开启被动则把上面的注释,添加下面几个 #connect_from_port_20=NO #pasv_enable=YES #pasv_min_port=50000 #pasv_max_port=60000
3、测试ftp连接
注意active模式连接ftp server时一定要加-A
ftp -A 服务器IP
问题解决。
觉得有用的朋友多帮忙转发哦!后面会分享更多devops和DBA方面的内容,感兴趣的朋友可以关注下~