1. 程式人生 > >ftp工作原理詳解

ftp工作原理詳解

基於C/S結構:客戶/伺服器模式
雙通道協議:資料和命令連線
資料傳輸格式:二進位制(預設)和文字

兩種模式:伺服器角度

ftp協議是雙通道,資料通道和命令通道,命令通道是固定埠21,而ftp資料通道分別工作在ftp的被動模式(pasv)和主動模式(porrt),主動模式使用21 和20 埠,被動模式開放21埠和大於1024的隨機埠,從網路安全的角度看主動模式只需要開放21和20埠,而被動模式需要開放21埠和所有大於1024的埠,主動模式似乎對伺服器更安全,那麼為什麼還要使用被動模式呢?其實被動模式是為了資料傳輸安全設定的,因為主動模式使用固定的20 埠傳輸資料,很容易被黑客竊取,因此實際使用中往往使用具有檢測狀態的防火牆開啟被動模式的埠,狀態檢測的防火牆會檢測客戶端連線ftp21埠的客戶端,一旦檢測到客戶端使用21命令埠就允許這個session連線ftp的隨機埠,而其他session是無法連線,這樣就能保證ftp隨機埠只對ftp session開放了。

ftp 主動模式(PORT style):伺服器主動連線

命令通道:客戶端:隨機port ------->伺服器:tcp21(客戶端傳送隨機埠號到伺服器的21埠)

資料通道:伺服器:TCP20 --------->客戶端:隨機port(伺服器端接收到客戶端的隨機埠用伺服器端的20埠主動連線客戶端的隨機埠)

ftp 被動模式(PASV style):客戶端主動連線

命令通道:客戶端:隨機port --------->伺服器:tcp21(客戶端傳送隨機埠號和兩個隨機數m,n到伺服器的21埠,伺服器開啟隨機埠號(m*256+n))

資料通道:伺服器:隨機port --------->客戶端:隨機port(伺服器端接收到客戶端的隨機埠用伺服器端的隨機埠埠主動連線客戶端的隨機埠)

相關推薦

ftp工作原理

基於C/S結構:客戶/伺服器模式 雙通道協議:資料和命令連線 資料傳輸格式:二進位制(預設)和文字 兩種模式:伺服器角度 ftp協議是雙通道,資料通道和命令通道,命令通道是固定埠21,而ftp資料通

lvs和keeplived的工作原理

lvs+keeplived的工作原理一、lvs的工作原理 使用集群的技術和liunx的操作系統實現一個高性能、高可用的服務器。可伸縮性、可靠性、很好的管理性。 特點:可伸縮網絡服務的幾種結構,它們都需要一個前端的負載調度器(或者多個進行主從備份)。我們先分析實現虛擬網絡服務的主要技術,指出IP負載均衡技術

ping命令知識 Ping命令工作原理

pla bsp 知識 網吧 撥號 lock tcp 問題 mage   在網絡應用中,ping網速與IP地址等都是非常常用的命令,但大家知道ping命令的工作原理嗎?要知道這其中的奧秘,我們有必要來看看Ping命令的工作過程到底是怎麽樣的。下面介紹下ping命令的詳細知識。

網絡卡工作原理

此篇文章對網上現有資料進行了整理和補充,提取出有用的部分,進行存檔學習。 一,認識網絡卡        網絡卡(Network Interface Card,簡稱NIC),也稱網路介面卡,是電腦與區域網相互連線的裝置。無論是普通電腦還是高階伺服器,只要連線到區域網,就都需

Hadoop MapReduce八大步驟以及Yarn工作原理

Hadoop是市面上使用最多的大資料分散式檔案儲存系統和分散式處理系統, 其中分為兩大塊分別是hdfs和MapReduce, hdfs是分散式檔案儲存系統, 借鑑了Google的GFS論文. MapReduce是分散式計算處理系統, 借鑑了Google的MapR

交換機路由器作用以及工作原理

1.1 PC機之間訪問過程 A訪問B過程 通過資料(mac地址)進行訪問 1)A傳送request請求包,該包攜帶源macA和目標macB 2)request請求包經過中繼器進行(廣播),所有的都可以收到該包 3)B收到A的請求包後,B給A回覆一個包(因為通訊是雙向的)

Spring MVC總結之工作原理

目錄 1.MVC思想/模式 2.Spring MVC的前端控制器(DispatcherServlet) 3.業務控制器Handle 4.Spring MVC的請求流程: 1.MVC思想/模式 1.1 MVC思想將一個應用分為三個基本部分:Model(模型)、Vie

Android中Canvas繪圖之PorterDuffXfermode使用及工作原理

概述 類android.graphics.PorterDuffXfermode繼承自android.graphics.Xfermode。在用Android中的Canvas進行繪圖時,可以通過使用PorterDuffXfermode將所繪製的圖形的畫素與Canv

Tomcat工作原理

該檔案描述瞭如何啟動TomcatServer <!-----------------------------------------------------------------------------------------------> <web-app>      <!

ArrayList的基本工作原理add

ArrayList其實就是一個長度可變的陣列,看原始碼就是知道,就是是一個Object[]。 ArrayList是unsynchronized。 因為底層由陣列承載,那麼需要連續的記憶體空間,所以空間複雜度是O(n)。 如果按下標直接去get(index)

platform平臺匯流排工作原理

一、platform平臺匯流排的簡介 (1)相對於USB、PCI、I2C、SPI等物理匯流排來說,platform匯流排是一種虛擬、抽象出來的匯流排,實際中並不存在這樣的匯流排。 (2)cpu與外部通訊的兩種方式,地址匯流排式連結(32的cpu就有0-4G直

storm 工作原理

1.1、概念 l Workers (JVMs): 在一個物理節點上可以執行一個或多個獨立的JVM 程序。一個Topology可以包含一個或多個worker(並行的跑在不同的物理機上), 所以worker process就是執行一個topology的子集, 並且worke

Android Widget工作原理(一) 最全介紹

      Widget是安卓的一應用程式元件,學名視窗小部件,它是微型應用程式檢視, 可以嵌入到其他應用程式(如主螢幕)和接收資料定期更新。,可以使其他應用程式的外掛被稱為應用程式部件。使用者可以通過新增視窗小部件來新增自己喜歡的APPwidget ,widget主

【Java多執行緒】執行緒池的工作原理(下)

接著上篇文章,我接下來繼續介紹執行緒池的工作原理,如果你還沒有看上篇,我建議最好瀏覽一下:執行緒池的工作原理詳解(上) Executors 工具類 1.定義 Executors是java執行緒池的工廠類,通過它可以快速初始化一個符合業務需求的執行緒池。

Appscan工作原理

AppScan,即 AppScan standard edition。其安裝在 Windows 作業系統上,可以對網站等 Web 應用進行自動化的應用安全掃描和測試。   Rational AppScan(簡稱 AppScan)其實是一個產品家族,包括眾多的應用安全掃描產品,從開發階段的原始碼掃描的 A

【深入Java虛擬機器】之Java虛擬機器工作原理

轉自:https://blog.csdn.net/bingduanlbd/article/details/8363734 一、類載入器 首先來看一下java程式的執行過程。               &nbs

Spark Streaming初步使用以及工作原理

在大資料的各種框架中,hadoop無疑是大資料的主流,但是隨著電商企業的發展,hadoop只適用於一些離線資料的處理,無法應對一些實時資料的處理分析,我們需要一些實時計算框架來分析資料。因此出現了很多流式實時計算框架,比如Storm,Spark Strea

lcd調色盤工作原理

舉例如下: /*  * 改變調色盤為一種顏色  * 輸入引數:  *     color: 顏色值,格式為0xAARRGGBB  /*AA為透明度*/  */  red   = (color &

ArrayList的基本工作原理remove

其實remove(index),add(index,e)類似去操作下標增加或者刪除的。其實用ArrayList挺費勁的。 下面就看看費勁在哪。 拿remove來說 public E remo

無刷直流電機構成及工作原理

直流電機主要有直流有刷電機和無刷直流電機兩種,特別是無刷直流電機以其出色的工作特性在工業生產及日常生活中應用廣泛,本文對無刷直流電機構成及工作原理進行介紹。一無刷直流電機簡介  無刷直流電機(BLDC)以電子換向器取代了機械換向器,所以無刷直流電機既具有直流電機良好的調速效能