概述
記一次最近碰到的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方面的內容,感興趣的朋友可以關注下~
文章來源: https://twgreatdaily.com/QkG_zW4BMH2_cNUgeqZQ.html