1. 程式人生 > >linux下命令列連線FTP是遇到的錯誤(425 Failed to establish connection)

linux下命令列連線FTP是遇到的錯誤(425 Failed to establish connection)

linux下命令列連線FTP是遇到的錯誤(425 Failed to establish connection)

首先FTP的執行模式有主動模式和被動模式兩種

然後筆者在工作中搭建了ftp,但是沒有開啟他的被動模式。

然後server端的防火牆開放了21埠。

因此客戶端能連上server,但是輸入命令會提示。(首先要資料passive off命令關閉客戶端以被動模式連線server端)

原因是ftp在主動模式下是通過21埠進行登陸的,但是後續是通過20埠與客戶端進行資料交換。

因此筆者在這個基礎上,在server開放了20埠。

但是問題依舊

接著筆者在客戶端也把20和21埠都打開了

但是問題還是沒有解決

 

這個時候無論是server端還是client端的20和21埠都是開放的。但是資料的傳輸都還是有阻礙。

查閱了很多網上的解決方案,都是說讓FTP開發被動模式,然後防火牆開放對應的埠段。

但是老子就是要用主動模式。也不是說不能弄個被動模式,但是那樣子解決問題就好像是在逃避問題一樣!

 

然後筆者想起防火牆中除了根據埠開發流量,還可以根據服務開放流量。

因此在server端的防火牆中開放ftp服務

firewall-cmd --add-service=ftp --permanent

firewall-cmd --reload

結果還是不行

於是我又在客戶端的防火牆中開放ftp服務

終於可以了!!!

 

因此,可能是需要客戶端和伺服器同時在防火牆中開放ftp服務。那麼才能在命令列下進行資料傳輸吧(windows的cmd下面和一些FTP客戶端選擇主動模式連線,皆不會出現上述情況!),也不知道為什麼是在linux的命令列下才會這樣。

 

本文原創!

轉載請註明出處!