——摘自百度百科
“故事”開(kāi)篇的俗語(yǔ)新解
“要想富,先修路”——云端與 IDC 相同,網(wǎng)絡(luò )先行,很多用戶(hù)在上云時(shí)并沒(méi)有做好安全的前期規劃導致埋下了安全隱患。
“擒賊先擒王”——論述 Azure 的網(wǎng)絡(luò )安全架構,為什么從 DMZ 區域設計實(shí)踐說(shuō)起?DMZ 區域是整個(gè)網(wǎng)絡(luò )安全設計中的重點(diǎn),流量屬性最復雜,安全重要性最高。
“一副好牌,也要打得漂亮”——關(guān)于云原生,很多用戶(hù)上云后希望更多采用云平臺第一方的托管服務(wù),過(guò)去一年多的時(shí)間 Azure 在安全產(chǎn)品上有很多新產(chǎn)品發(fā)布,也希望幫助用戶(hù)了解 Azure 上有哪些牌,并將這副牌打好。
DMZ分而治之的“宏偉藍圖”
如果我們把運行在云端的應用服務(wù)按照服務(wù)對象來(lái)分類(lèi)的話(huà),一類(lèi)是暴露給互聯(lián)網(wǎng)用戶(hù)使用的外網(wǎng)應用,一類(lèi)是暴露給內網(wǎng)用戶(hù)使用的內網(wǎng)應用。如果我們按照相同的安全策略進(jìn)行管理,外網(wǎng)應用處于眾矢之的,一旦被攻破其會(huì )成為滲透內網(wǎng)的跳板。其實(shí)整個(gè)網(wǎng)絡(luò )安全中分而治之的概念貫穿在方方面面,Zero-Trust Sercurity(零信任安全)中做了任何人、應用都可能成為安全潛在危險的假設,所以在進(jìn)行網(wǎng)絡(luò )安全涉及的時(shí)候我們應該以按需分配的原則,為用戶(hù),應用系統進(jìn)行分類(lèi),以最小權限分配原則將安全策略分配到用戶(hù),應用系統上。在承載系統的 Azure VNet 中外網(wǎng)應用和內網(wǎng)應用首先通過(guò)子網(wǎng)劃分的方式將 VNet 拆分為多個(gè) Segment(分段),通過(guò)分段便于我們對分段內的系統使能不同的安全策略,在這里我們定義外網(wǎng)應用分段為 DMZ-Subnet,內網(wǎng)應用分段為 Others-Subnet。

當擁有分段后,按照外網(wǎng)應用分段(DMZ-Subnet)和內網(wǎng)應用分段(Others-Subnet)來(lái)定義不同的訪(fǎng)問(wèn)安全策略。在傳統數據中心中 DMZ 區域通常通過(guò)防火墻來(lái)實(shí)現,通過(guò)定義不同的區域(Zone),來(lái)實(shí)現訪(fǎng)問(wèn)的隔離。在 Azure VNet 中沒(méi)有區域的概念,我們可以不同的分段即 Subnet 映射為傳統的區域即(Zone)的概念。在 DMZ 實(shí)踐中,通過(guò)定義訪(fǎng)問(wèn)策略來(lái)實(shí)現安全隔離,一般的策略邏輯為:允許互聯(lián)網(wǎng)訪(fǎng)問(wèn) DMZ 區域,允許內網(wǎng)區域訪(fǎng)問(wèn) DMZ 區域,不允許 DMZ 區域訪(fǎng)問(wèn)內網(wǎng)區域。上述邏輯的實(shí)現可以通過(guò) Azure NSG(網(wǎng)絡(luò )安全組服務(wù))來(lái)實(shí)現,在 NSG 中我們可以定義訪(fǎng)問(wèn)策略規則,邏輯與傳統防火墻 ACL 一致。Azure NSG 規則可以使能在 Subnet 上或虛擬主機的 Nic 上,從使用實(shí)踐上對于整個(gè)分段即 Subnet 內所有虛擬主機一致的策略建議配置在 Subnet 上,對于個(gè)別主機的特殊策略配置在 Nic 上,這樣簡(jiǎn)單且易于管理。

在上述的 NSG 訪(fǎng)問(wèn)策略規則規劃中,我們還有很多留白的區域,如 DMZ-DMZ 即 DMZ 區域內部的互訪(fǎng),Others-Others 即內網(wǎng)區域內部的互訪(fǎng),以及 DMZ,Others 到 Internet 的訪(fǎng)問(wèn)。我們先來(lái)看下內網(wǎng)場(chǎng)景,多組應用系統雖然同時(shí)歸屬在相同分段但它們之間未必存在依賴(lài)(即不存在互訪(fǎng)需求),按照零信任網(wǎng)絡(luò )模型最小訪(fǎng)問(wèn)權限原則,在同分段內不同應用系統之間也需要進(jìn)行訪(fǎng)問(wèn)控制策略隔離。如法炮制,分段!前面我們通過(guò) Subnet 實(shí)現了分段,在 Subnet 內的系統我們繼續分段,這里我們稱(chēng)之為微分段(Micro-Segment)。在傳統網(wǎng)絡(luò )實(shí)踐中通常是對同 Subnet 內的主機設置基于 IP 地址的明細訪(fǎng)問(wèn)規則,這種做法可以達到安全目標但不易于維護,隨著(zhù)主機數量的增多,規則數量將成比例激增,后期不宜與維護管理。Azure 中的 Application Security Group 功能為微分段的實(shí)現帶來(lái)了便利,用戶(hù)可以將虛擬主機按照微分段創(chuàng )建相應的 Application Security Group,然后在 NSG 策略中直接通過(guò) Application Security Group 來(lái)定義訪(fǎng)問(wèn)策略,訪(fǎng)問(wèn)安全策略的定義剝離了 IP 的依賴(lài),使后期維護變得簡(jiǎn)單快捷。

通過(guò)微分段實(shí)現分段內部的安全訪(fǎng)問(wèn)控制,可以進(jìn)一步加固網(wǎng)絡(luò )安全。下面我們來(lái)看一下 DMZ 和 Others 分段訪(fǎng)問(wèn) Internet 的安全設計。在傳統數據中心內這部分我們稱(chēng)之為互聯(lián)網(wǎng)邊緣(Internet Edge),通過(guò)防火墻來(lái)實(shí)現 DMZ 和 Others 向互聯(lián)網(wǎng)的訪(fǎng)問(wèn),隨著(zhù)安全產(chǎn)品的不斷發(fā)展演進(jìn),從三四層防御到應用感知的七層防御,從靜態(tài)策略到動(dòng)態(tài)策略,不斷的來(lái)加固和提升企業(yè)網(wǎng)絡(luò )的安全等級。在A(yíng)zure 中可以通過(guò) Azure Firewall (防火墻服務(wù))來(lái)實(shí)現,Azure Firewall 可以提供訪(fǎng)問(wèn)日志審計,FQDN 訪(fǎng)問(wèn)控制策略,基于 IP 信譽(yù)的安全策略等功能,實(shí)現 VNet 內向 Internet 訪(fǎng)問(wèn)的安全防護。

上述設計中所有的安全訪(fǎng)問(wèn)策略主要針對的都是對于與業(yè)務(wù)流量的策略,當今很多安全事件都是從控制層面發(fā)起了滲透,比如主機被破解 SSH/RDP 登錄等。所以從整個(gè)安全設計上,外網(wǎng)區域,內網(wǎng)區域的隔離其實(shí)體現最小范圍的將應用暴露在公網(wǎng),那么不具備公網(wǎng)訪(fǎng)問(wèn)的主機如何進(jìn)行管理?市場(chǎng)上有很多成熟的跳板機解決方案解決的就是遠程登陸管理的問(wèn)題,在 Azure 中 Bastion 服務(wù)可以提供跳板機服務(wù),可以幫助管理員用戶(hù)通過(guò)指定的入口對 VNet 內的主機進(jìn)行管理。Bastion 服務(wù)作為托管的跳板機服務(wù),將管理員用戶(hù)的訪(fǎng)問(wèn)聚合到統一入口,對于 VNet 內部的主機只需要放行對于 Bastion 服務(wù)地址的登錄訪(fǎng)問(wèn)即可。

前面的設計中,我們通過(guò)分段和微分段的方式實(shí)現了對虛擬主機訪(fǎng)問(wèn)的分而治之。對于 Azure 中的 PaaS 服務(wù),實(shí)現方式略有不同,默認情況下 Azure PaaS 服務(wù)暴露的是一個(gè)公網(wǎng)訪(fǎng)問(wèn)的 Endpoint,用戶(hù)可以在 PaaS 服務(wù)內置的 Firewall 防火墻訪(fǎng)問(wèn)策略?xún)仍O置允許訪(fǎng)問(wèn)的客戶(hù)端 IP 白名單,但由于暴露在公網(wǎng)仍然存在被別人掃描的可能性。所以建議用戶(hù)采用 Azure Private Link,將 Azure PaaS 服務(wù)的訪(fǎng)問(wèn) Endpoint 鎖定到 VNet 內部只暴露內網(wǎng)訪(fǎng)問(wèn)節點(diǎn),從而實(shí)現與虛擬主機一樣的內網(wǎng)隔離設計。

除此之外 Web 七層安全防御以及 DDoS 防御也是受到普遍關(guān)注的安全實(shí)踐,Azure WAF (Web 安全防火墻服務(wù))和 Azure DDoS 服務(wù)(拒絕服務(wù)攻擊防御服務(wù))可以幫助用戶(hù)實(shí)現防御。Azure WAF 支持在 Azure FrontDoor 服務(wù)以及 Azure Application Gateway 服務(wù)上開(kāi)啟,對于面向互聯(lián)網(wǎng) 2C 應用,WAF on FrontDoor 可以借助 FrontDoor 服務(wù)的全球接入點(diǎn)實(shí)現全球分布式近緣防御。Azure DDoS 服務(wù)借助微軟云全球豐富的網(wǎng)絡(luò )帶寬資源,結合基于機器學(xué)習的自適應流量策略模型為用戶(hù)提供全球性的 DDoS 保護服務(wù)。

DMZ 的設計就完成了,意味著(zhù)我們借助 Azure 第一方的網(wǎng)絡(luò )安全組件以零信任網(wǎng)絡(luò )模型為基準構建了安全可靠的網(wǎng)絡(luò )環(huán)境。但是,安全無(wú)小事,安全事無(wú)巨細,更多關(guān)于身份安全,數據安全的話(huà)題,且聽(tīng)下回分解。