【Linux入門】FTP協議與SFTP協議是什麼?兩者有什麼聯絡?

老男孩IT教育機構發表於2022-03-16

  Linux作業系統檔案傳輸的方式有很多種,但在日常工作以及實際專案開發中最常使用的檔案傳輸方式就是FTP和SFTP,那麼Linux系統中FTP和Sftp的區別有哪些?這兩個傳輸方式各有什麼特點呢?接下來我們一起來看看詳細的介紹。

  第一、FTP協議

  FTP是TCP/IP協議組中的協議之一,TP協議由兩個部分組成:1、FTP伺服器,用來儲存檔案;2、FTP客戶端,使用者可以使用FTP客戶端透過FTP協議訪問位於FTP伺服器上的資源。

  預設情況下FTP協議使用TCP埠中的20和21這兩個埠。21埠用於傳輸控制資訊,而是否使用20作為傳輸資料的埠與FTP使用的傳輸模式有關,如果採用被動模式則具體使用哪個埠要伺服器端和客戶端協商決定。FTP傳輸模式分為兩種:

  ①主動模式

  FTP客戶端首先和FTP伺服器的TCP21埠建立連線,透過這個通道傳送命令,客戶端需要接收資料的時候在這個通道上傳送PORT命令。PROT命令包含了客戶端用什麼埠接收資料。在傳輸資料的時候,伺服器端透過自己的TCP 20埠連線至客戶端的指定埠傳送資料。

  ②被動模式

  在建立控制通道與主動模式相似,但建立連線後是Pasv命令。FTP伺服器收到Pasv命令後便隨機開啟一個高階埠並且通知客戶端在這個埠上傳送資料的請求,客戶端連線FTP伺服器此埠,透過三次握手建立通道,然後FTP伺服器將透過這個埠進行資料的傳送。

  第二、SFTP協議

  SFTP是SSH File Transfer Protocol的縮寫,安全檔案傳送協議。SFTP與FTP有著幾乎一樣的語法和功能。SFTP為SSH的其中一部分,是一種傳輸檔案至Blogger伺服器的安全方式。其實在SSH軟體包含中,已經包含了一個叫作SFTP的安全檔案資訊傳輸子系統,SFTP本身沒有單獨的守護程式,它必須使用sshd守護程式來完成相應的連線和答覆操作,所以從某種意義上來說,SFTP並不像一個伺服器程式,而更像是一個客戶端程式。

  第三、二者的主要區別

  連結方式:FTP使用TCP埠21上的控制連線建立連線。而SFTP是在客戶端和伺服器之間透過SSH協議建立的安全連線來傳輸檔案。

  安全性:SFTP使用加密傳輸認證資訊和傳輸的資料,所以使用SFTP相對於FTP是非常安全。

  效率:SFTP這種傳輸方式使用了加密解密技術,所以傳輸效率比普通的FTP要低很多。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69952527/viewspace-2871445/,如需轉載,請註明出處,否則將追究法律責任。

相關文章