# 防火牆(Firewall) 1.架設在網際網路與內網之間的資安系統,根據持有者預定的策略來監控往來的傳輸。 2.防火牆可能是一台專屬的網路裝置,也可執行於主機之上,用於檢查各個網路介面的網路傳輸。是位於兩個或以上網路間,實行網路間存取或控制的一組元件集合之硬體或軟體。 **防火牆功能:** 1.隔離內部網路(私有網路)與網際網路的流量,以保護內網的安全。 2.透過將網路劃分成不同區域(通常稱為ZONE),制定出不同區域之間的存取控制策略來控制不同信任程度區域間的資料傳送。 3.控管內部網路傳入和傳出的封包,避免未經授權存取內部網路的資源。 4.紀錄與監控內部網路的活動。 ---------------- # 防火牆類型(依實作方式區分) **1.軟體防火牆:** 軟體防火牆也稱為個人防火牆,主要是將防火牆軟體部署在電腦主機上。只適合隔離單一網路,但它只能保護單一設備,而不是整個網路。建置軟體防火牆的成本較低,安裝及設置較簡單。因此適合個人使用,但不適用於企業網路。 **2.硬體防火牆:** 硬體防火牆是類似路由器的實體設備,將防火牆程式寫入晶片中,由硬體執行防火牆的功能。硬體防火牆非常適合企業使用,而且比軟體防火牆更穩定。這種設備會在傳輸流量時檢查封包,也具有內容過濾、入侵偵測與防護等功能。不過一般個人用戶可能無法花費高昂成本建置硬體防火牆。 **3.雲端防火牆:** 雲端防火牆使用雲端伺服器,不需在本地端建置防火牆,通常會將其設定為代理伺服器(有時會稱為代理防火牆)。雲端防火牆的管理非常有彈性,可以根據實際需求隨時增減流量負荷,在管理上要比其他類型的防火牆更加容易。 --------------- # 防火牆類型(依過濾類型區分) **1.封包過濾防火牆(Packet Filter):** 這種防火牆會檢查封包標頭的接收端和發送端IP位址、封包類型、埠號和其他網路資訊,並允許符合規則的封包通過,但不會檢查封包內的資料內容,作用於網路層。使用ACL監控。 > 一般而言,由於來源IP不易阻擋,通常藉由阻擋非80/443的埠,以阻擋來自非80/443的埠的不需要的流量。 **2.電路閘道器(Circuit Level gateway):** 電路閘道器不需要大量的運算能力和資源。它工作在 OSI 模型的會話層(或TCP/IP的應用層和傳輸層之間)。它監視數據包之間的 TCP 握手以確定請求的會話是否合法。但它不會檢查封包內的資料內容,只檢查封包來源。不過這種作法無法保證安全性,因為惡意程式仍可能隱藏在封包中。 **3.狀態檢視防火牆(Stateful inspection firewall):** 一種能夠提供狀態封包檢查(stateful packet inspection,縮寫為SPI)或狀態檢視(stateful inspection)功能的防火牆,能持續追蹤穿過這個防火牆的各種網路連線(例如TCP與UDP連線)的狀態。這種防火牆被設計來區分不同連線種類下的合法封包。只有符合主動連線的封包才能夠被允許穿過防火牆,其他的封包都會被拒絕。但因為狀態檢查防火牆執行較多的處理,因此效能比封包過濾防火牆較差。 > 網路連線各種性質包括:來源端IP位置,目的端IP位置、UDP或TCP埠口號碼,以及連線所處的狀態階段(連線初始化、交握中,資料傳輸中、或完成連線)。 **4.應用層防火牆:** 應用層防火牆也稱為代理防火牆,這種防火牆在應用層運作,會檢查內部網路和流量來源之間的流量。它先經由代理伺服器傳遞流量,並檢查傳入的流量,然後才允許流量進入內部網路中。 應用層防火牆有點類似狀態檢查,會同時檢查封包和 TCP 握手。兩者之間的主要差異是,狀態檢查防火牆只會檢查封包來源,應用層防火牆則會檢查封包內容,並進行深度封包檢查(DPI)。 應用層防火牆還能將內部網路與流量來源分離,為網路提供一層匿名性和額外的保護。不過檢查封包需要花費較多的時間,因此可能會造成連線速度變慢。 **5.次世代防火牆NGFW(Next-Generation Firewall):** 這種新型防火牆除了傳統防火牆功能之外,還加入許多的新技術。例如:深度封包檢查(DPI)、TCP 握手檢查、表層封包檢查、加密流量檢查、病毒檢測、入侵預防系統(IPS)等。 ------------------ ## 代理服務(Proxy): 代理(Proxy)伺服器(可以是一台專屬的網路裝置,或是在一般電腦上的一套軟體)**採應用程式的運作方式**,回應所收到的封包(例:連線要求)來實現防火牆的功能,而封鎖/拋棄其他封包。 代理伺服器用來連接一個網路(例:網際網路)到另一個特定子網(例:企業內網)的轉送者。它『代理』使用者的需求,代為前往伺服器取得相關的資料。如下圖示。 ![](https://i.imgur.com/QJu5zdZ.png) 1. client 會向 proxy server 要求資料,請 proxy 幫忙處理; 2. proxy 分析使用者的 IP 來源是否合法?想要去的 Google 伺服器是否合法? 如果 client 要求都合法的話,那 proxy 就會主動的幫 client 前往 Google 取得資料; 3. Google 所回傳的資料是傳給 proxy server ,所以 Google 伺服器上面看到的是 proxy server 的 IP; 4. 最後 proxy 將 Google 回傳的資料送給 client。 > 一般 proxy 主機通常僅開放 port 80, 21, 20 等 WWW 與 FTP 的埠口,且通常 Proxy 就架設在路由器上面,因此可完整掌控區域網路內的對外連線。 ------------------ # 防火牆架構: **1.主機型防火牆:** 此防火牆需有兩張網路卡,**一張與網際網路連接**,另**一張與內部網路連接**,這樣網際網路與內部網路的通道**無法直接接通**,所有封包都需要透過主機傳送。 **2.雙閘型防火牆:** 延伸主機型防火牆的兩張網路卡配置,另安裝應用服務轉送器的軟體,所有網路封包都須經過此軟體檢查,此軟體將過濾掉不被系統所允許的封包。 **3.屏障單機型防火牆:** 除需要主機外,還需要一個路由器,**路由器需有封包過濾功能**,**主機則負責過濾及處理網路服務要求的封包**,當網際網路的封包進入屏障單機型防火牆時,路由器會先檢查此封包是否滿足過濾規則,再將過濾成功的封包,轉送到主機進行網路服務層的檢查與傳送。 架構示意: ![](https://i.imgur.com/99MABux.png) **4.屏障雙閘型防火牆:** 將**屏障單機型防火牆**的主機換成**雙閘型防火牆**。 **5.屏障子網域型防火牆:** 藉由多台主機與兩個路由器組成,電腦分成兩個區塊,屏障子網域與內部網路,封包經由以下路徑,第一個路由器->屏障子網域->第二路由器->內部網路,此設計有階段式的過濾功能,因此兩個路由器可有不同的過濾規則,讓網路封包更有效率。若一封包通過第一過濾器封包,會先在屏障子網域進行服務處理,若要進行更深入內部網路的服務,則要通過第二路由器過濾。 架構示意: ![](https://i.imgur.com/6MJ8yjv.png) [參考資料](https://linux.vbird.org/linux_server/centos6/0250simple_firewall.php#fig9.1-2) --------------------- # 現代防火牆深度檢測補充: ## WAF網站應用程式防火牆( Web Application Firewall ): 透過監控網站傳輸的 HTTP 流量,比對病毒與惡意程式資料庫,過濾出可疑流量並拒絕惡意流量進入,保護網站免受攻擊。 網站的流量有很多種,安全無虞的、存有安全危脅的、帶有 SQL Injection、惡意攻擊的流量等。**WAF 主要作用於 OSI 的應用層**,進行流量來源的分析與過濾。 透過所擁有的資安威脅資料庫進行流量分析比對,判斷每支流量的安全性,准許安全流量進入網站,並將可疑的、有害的、不信任的流量排除在外。 ![](https://i.imgur.com/mJCMrup.png) WAF通常部屬在端點防火牆後,網站伺服器前,流量會先經由端點防火牆,前往至WAF分析過濾後,再轉至網站伺服器。 ![](https://i.imgur.com/TY8Yc3X.jpg) ------------- ## IPS 入侵預防系統(Intrusion Prevention System 是對防火牆的補充。入侵預防系統能夠監視網路或網路裝置的資料傳輸行為,能夠即時的中斷、調整或隔離一些不正常或是具有傷害性的網路資料傳輸行為。 [參考資料](https://zh.m.wikipedia.org/zh-tw/%E5%85%A5%E4%BE%B5%E9%A2%84%E9%98%B2%E7%B3%BB%E7%BB%9F) ------------- ## IDS 入侵檢測系統(Intrusion-detection system) 是一種網路安全裝置或應用軟體,可以監控網路傳輸或者系統,檢查是否有可疑活動或者違反企業的政策。偵測到時發出警報或者採取主動反應措施。與其他網路安全裝置的不同之處在於,IDS是一種積極主動的安全防護技術。 [參考資料](https://zh.wikipedia.org/zh-tw/%E5%85%A5%E4%BE%B5%E6%A3%80%E6%B5%8B%E7%B3%BB%E7%BB%9F) ------------- ## DPI 深度封包檢測(Deep Packet Inspection) 結合了入侵檢測系統(IDS)、入侵預防系統(IPS)及狀態防火牆等功能。此結合讓深度封包檢測可檢測到某些IDS、IPS或狀態防火牆都無法發覺的攻擊。 狀態防火牆能看到封包流的開始與結束,但不能發現超過特定應用範圍的事件。 IDS能檢測入侵,但幾乎沒有阻擋此類攻擊的能力。深度封包檢測能用來快速阻擋來自病毒與蠕蟲的攻擊。 具有深度封包檢測的裝置可以看到OSI模型的第2層及第3層之後。在某些情況下,深度封包檢測可用來分析OSI模型的第2層至第7層。這包括了整個標頭、資料協定架構及訊息的負載。 深度封包檢測可以依據包含由封包資料部分摘取出之資訊的特徵資料庫,識別並分類訊務,從而允許比僅依據標頭資訊分類有更精確的控制。 [參考資料](https://zh.m.wikipedia.org/zh-tw/%E6%B7%B1%E5%BA%A6%E5%8C%85%E6%A3%80%E6%B5%8B)