Rookie

漫游指南-1 的世界

流浪在大理的斜杠青年

正向代理和反向代理的區別

0X01 正向代理#

​ 正向代理是一個位於客戶端和原始伺服器 (origin server) 之間的伺服器,為了從原始伺服器取得內容,客戶端向代理發送一個請求並指定目標 (原始伺服器),然後代理向原始伺服器轉交請求並將獲得的內容返回給客戶端。客戶端必須要進行一些特別的設置才能使用正向代理。

​ 正向代理類似一個跳板機,代理訪問外部資源。

正向

0X02 反向代理#

​ 反向代理正好相反,對於客戶端而言它就像是原始伺服器,並且客戶端不需要進行任何特別的設置。客戶端向反向代理的命名空間 (name-space) 中的內容發送普通請求,接著反向代理將判斷向何處 (原始伺服器) 轉交請求,並將獲得的內容返回給客戶端,就像這些內容原本就是它自己的一樣。

​ 反向代理(Reverse Proxy)實際運行方式是指以代理伺服器來接受 internet 上的連接請求,然後將請求轉發給內部網路上的伺服器,並將從伺服器上得到的結果返回給 internet 上請求連接的客戶端,此時代理伺服器對外就表現為一個伺服器。
(1)保證內網的安全,可以使用反向代理提供 WAF 功能,阻止 web 攻擊

大型網站,通常將反向代理作為公網訪問地址,Web 伺服器是內網。

反向代理

(2)負載均衡,通過反向代理伺服器來優化網站的負載

Snipaste_2025-02-14_12-53-18

0X03 區別#

正向代理中,proxy 和 client 同屬一個 LAN,對 server 透明;
反向代理中,proxy 和 server 同屬一個 LAN,對 client 透明。
實際上 proxy 在兩種代理中做的事都是代為收發請求和響應,不過從結構上來看正好左右互換了下,所以把前者那種代理方式叫做正向代理,後者叫做反向代理。

從用途上來區分:#

  • 正向代理:正向代理用途是為了在防火牆內的局域網提供訪問 internet 的途徑。另外還可以使用緩衝特性減少網路使用率
  • 反向代理:反向代理的用途是將防火牆後面的伺服器提供給 internet 用戶訪問。同時還可以完成諸如負載均衡等功能

從安全性來講:#

(1)正向代理:正向代理允許客戶端透過它訪問任意網站並且隱蔽客戶端自身,因此你必須採取安全措施來確保僅為經過授權的客戶端提供服務
(2)反向代理:對外是透明的,訪問者並不知道自己訪問的是代理。對訪問者而言,他以為訪問的就是原始伺服器

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。