2014-04-23 116 views
4

我正在使用WinSCP爲了使用FTP協議下載文件。WinSCP:服務器拒絕SFTP連接,但它偵聽FTP

我在XML日誌中得到了這個錯誤。任何想法?

Network error: Connection to "example.com" refused. The server rejected SFTP connection, but it listens for FTP connections.

Did you want to use FTP protocol instead of SFTP? Prefer using encryption.

回答

4

WinSCP默認使用SFTP協議,與大多數使用FTP協議的其他文件傳輸客戶端相反。

因此,當您嘗試使用默認的SFTP協議連接到沒有SSH/SFTP服務(沒有打開端口22)的服務器時,但它具有FTP服務(端口21打開),它表明你可能實際上想要使用FTP。

你需要明確選擇在登錄對話框中的FTP協議:
https://winscp.net/eng/docs/ui_login

有關詳細信息:
https://winscp.net/eng/docs/message_server_rejected_sftp_listens_for_ftp

+2

我將其更改爲FTP,然後出現錯誤:由於目標機器主動拒絕,無法建立連接。 連接失敗。 –

+0

這是問答網站,不是論壇。如果您有問題,請發佈。雖然[蘇]會更好。 –

+0

我在Linux vm播放器機器上有同樣的情況 - sshd正在運行,端口22是打開的(** systemctl status sshd **),從ip ifconfig **中取ip ....但仍看到「服務器拒絕SFTP連接,但它會偵聽FTP連接。「 –

1

即使所有這些協議具有類似的名稱,他們是不同的:

  • FTP - 文件傳輸協議RFC959
  • SFTP - 「安全的文件傳輸」,這是通過SSH連接傳輸文件
  • SCP - 「安全拷貝」,通過SSH進行文件傳輸
  • FTPS - 「FTP安全」,使用SSL(非SSH)連接的原始FTP的擴展

因此,SFTP和SCP需要在對等體上有一個SSH服務器,而FTP/FTPS需要一個FTP(s)服務器。

WinSCP可能都是這些,但它只能在FTP服務器啓用了SSL擴展的情況下才能執行FTPS。所以如果你想做FTPS(而不是SFTP),請檢查你的服務器配置。

+0

偉大的答案。還要注意,如上所述,FTP通常運行在端口21上(有時端口20用於數據連接),SFTP和SCP通常在22上,而FTP/S通常在端口990上運行,用於隱式SSL,端口21運行在AUTH/Explicit SSL上。隱式/顯式不同之處在於,在端口990上它暗示着連接是安全的並且握手立即發生。對於顯式SSL,連接位於標準FTP端口上,並且握手發生的原因是來自客戶端的AUTH SSL或AUTH TLS陳述。 – WebDrive