Azure:實現(xiàn)安全的混合網(wǎng)絡

來源: Microsoft Azure
作者:Microsoft Azure
時間:2021-01-22
17364
此參考體系結構顯示了一個可將本地網(wǎng)絡擴展到Azure的安全混合網(wǎng)絡。該體系結構實現(xiàn)了本地網(wǎng)絡和Azure虛擬網(wǎng)絡之間的外圍網(wǎng)絡(也稱為外圍網(wǎng)絡)。所有入站和出站流量均通過Azure防火墻。部署此解決方案。

此參考體系結構顯示了一個可將本地網(wǎng)絡擴展到Azure的安全混合網(wǎng)絡。該體系結構實現(xiàn)了本地網(wǎng)絡和Azure虛擬網(wǎng)絡之間的外圍網(wǎng)絡(也稱為外圍網(wǎng)絡)。所有入站和出站流量均通過Azure防火墻。部署此解決方案。

dmz-private.png

下載此體系結構的Visio文件。

此體系結構需要使用VPN網(wǎng)關或ExpressRoute連接來連接到本地數(shù)據(jù)中心。此體系結構的典型用途包括:

在本地運行一部分工作負荷,在Azure中運行一部分工作負荷的混合應用程序。

需要對從本地數(shù)據(jù)中心進入Azure虛擬網(wǎng)絡的流量進行精細控制的基礎結構。

必須審核傳出流量的應用程序。這通常是許多商業(yè)系統(tǒng)的監(jiān)管要求,可以幫助防止公開披露私有信息。

體系結構

該體系結構包括以下組件。

本地網(wǎng)絡。組織中實現(xiàn)的專用局域網(wǎng)。

Azure虛擬網(wǎng)絡。虛擬網(wǎng)絡承載在Azure中運行的應用程序和其他資源。

網(wǎng)關。網(wǎng)關提供本地網(wǎng)絡中的路由器與虛擬網(wǎng)絡之間的連接。網(wǎng)關放在其自己的子網(wǎng)中。

Azure防火墻。Azure防火墻是作為服務托管的防火墻。防火墻實例放置在其自己的子網(wǎng)中。

虛擬網(wǎng)絡路由。虛擬網(wǎng)絡路由定義Azure虛擬網(wǎng)絡中的IP流量流。如上圖所示,有兩個用戶定義的路由表。

在網(wǎng)關子網(wǎng)中,發(fā)送到web層子網(wǎng)的流量(10.0.1.0/24)通過Azure防火墻實例進行路由。

在web層子網(wǎng)中,由于VNet本身的地址空間沒有路由指向Azure防火墻,因此web層實例可以直接相互通信,而不能通過Azure防火墻進行通信。

備注

根據(jù)VPN連接的要求,你可以配置邊界網(wǎng)關協(xié)議(BGP)路由,以實現(xiàn)將流量定向到本地網(wǎng)絡的轉發(fā)規(guī)則。

網(wǎng)絡安全組。使用安全組限制虛擬網(wǎng)絡中的網(wǎng)絡流量。例如,在隨此參考體系結構一起提供的部署中,web層子網(wǎng)允許來自本地網(wǎng)絡和虛擬網(wǎng)絡中的TCP流量;業(yè)務層允許來自web層的流量;數(shù)據(jù)層允許來自業(yè)務層的流量。

堡壘。使用Azure堡壘,可以通過SSH或遠程桌面協(xié)議(RDP)登錄到虛擬網(wǎng)絡中的vm,而無需直接向Internet公開vm。使用堡壘管理虛擬網(wǎng)絡中的Vm。

建議

以下建議適用于大多數(shù)方案。除非有優(yōu)先于這些建議的特定要求,否則請遵循這些建議。

訪問控制建議

使用azure RBAC)(azure基于角色的訪問控制來管理應用程序中的資源。考慮創(chuàng)建以下自定義角色:

一個DevOps角色,具有管理應用程序的基礎結構、部署應用程序組件以及監(jiān)視和重新啟動VM的權限。

一個集中式IT管理員角色,用于管理和監(jiān)視網(wǎng)絡資源。

安全IT管理員角色,用于管理安全網(wǎng)絡資源,例如防火墻。

DevOps和IT管理員角色不應具有對防火墻資源的訪問權限。這應限制為安全性IT管理員角色。

有關資源組的建議

可以通過將Vm、虛擬網(wǎng)絡和負載均衡器組合在一起來輕松管理Azure資源(例如Vm、虛擬網(wǎng)絡和負載均衡器)。將Azure角色分配給每個資源組以限制訪問。

建議創(chuàng)建以下資源組:

包含虛擬網(wǎng)絡的資源組(不包括Vm)、Nsg以及用于連接到本地網(wǎng)絡的網(wǎng)關資源。將集中式IT管理員角色分配給此資源組。

一個資源組,其中包含用于網(wǎng)關子網(wǎng)的Azure防火墻實例和用戶定義的路由。將安全性IT管理員角色分配給此資源組。

用于每個應用層的單獨資源組,包含負載均衡器和VM。請注意,此資源組不應包含每個層的子網(wǎng)。將DevOps角色分配給此資源組。

網(wǎng)絡建議

若要接受來自internet的入站流量,請將DNAT)規(guī)則(目標網(wǎng)絡地址轉換添加到Azure防火墻。

目標地址=防火墻實例的公共IP地址。

翻譯地址=虛擬網(wǎng)絡中的專用IP地址。

該示例部署將端口80的internet流量路由到web層負載均衡器。

使用站點到站點VPN隧道通過本地網(wǎng)絡強制隧道所有出站internet流量,并使用網(wǎng)絡地址轉換(NAT)路由到internet。這可以防止任何存儲在數(shù)據(jù)層中的機密信息的意外泄漏,并允許檢查和審核所有傳出流量。

請勿完全阻止來自應用程序層的internet流量,因為這會阻止這些層使用依賴公共IP地址的Azure PaaS服務,例如VM診斷日志記錄、VM擴展下載和其他功能。Azure診斷還要求組件可以讀取和寫入Azure存儲帳戶。

驗證出站Internet流量是否正確地強制隧道傳遞。如果使用的是本地服務器上的"路由和遠程訪問"服務的VPN連接,請使用WireShark等工具。

請考慮使用應用程序網(wǎng)關或Azure前門進行SSL終止。

可伸縮性注意事項

有關VPN網(wǎng)關的帶寬限制的詳細信息,請參閱網(wǎng)關sku。對于更高帶寬,請考慮升級到ExpressRoute網(wǎng)關。ExpressRoute提供最多10 Gbps的帶寬,且延遲低于VPN連接。

有關Azure網(wǎng)關的可伸縮性的詳細信息,請參閱使用Azure和本地VPN實現(xiàn)混合網(wǎng)絡體系結構和使用Azure ExpressRoute實現(xiàn)混合網(wǎng)絡體系結構中的可伸縮性注意事項部分。

可用性注意事項

如果要使用Azure ExpressRoute在虛擬網(wǎng)絡和本地網(wǎng)絡之間提供連接,請將VPN網(wǎng)關配置為在ExpressRoute連接不可用時提供故障轉移。

有關為VPN和ExpressRoute連接保持可用性的特定信息,請參閱使用Azure和本地VPN實現(xiàn)混合網(wǎng)絡體系結構和使用Azure ExpressRoute實現(xiàn)混合網(wǎng)絡體系結構中的可用性注意事項。

可管理性注意事項

如果從本地網(wǎng)絡到Azure的網(wǎng)關連接已關閉,你仍可以通過Azure堡壘訪問Azure虛擬網(wǎng)絡中的Vm。

參考體系結構中每個層的子網(wǎng)都受NSG規(guī)則保護??赡苄枰獎?chuàng)建一個規(guī)則以打開用于在Windows VM上進行遠程桌面協(xié)議(RDP)訪問的端口3389,或是用于在Linux VM上進行安全外殼(SSH)訪問的端口22。其他管理和監(jiān)視工具可能需要規(guī)則打開其他端口。

如果要使用ExpressRoute在本地數(shù)據(jù)中心與Azure之間提供連接,請使用Azure連接工具包(AzureCT)監(jiān)視和解決連接問題.

可以在以下文章中找到有關監(jiān)視和管理VPN和ExpressRoute連接的其他信息:

使用Azure和本地VPN實現(xiàn)混合網(wǎng)絡體系結構

使用Azure ExpressRoute實施混合網(wǎng)絡體系結構

安全注意事項

此參考體系結構實現(xiàn)多個安全級別。

通過Azure防火墻路由所有本地用戶請求

網(wǎng)關子網(wǎng)中的用戶定義路由阻止所有用戶請求,而不是從本地收到的請求。路由會將允許的請求傳遞給防火墻,如果防火墻規(guī)則允許這些請求,則會將這些請求傳遞給應用程序。可以添加其他路由,但請確保它們不會意外繞過防火墻或阻止用于管理子網(wǎng)的管理流量。

使用NSG阻止/傳遞應用層之間的流量

各層之間的流量使用NSG進行限制。業(yè)務層阻止不是源自Web層的所有流量,而數(shù)據(jù)層阻止不是源自業(yè)務層的所有流量。如果要求擴展NSG規(guī)則以允許對這些層進行更廣泛的訪問,請針對安全風險權衡這些要求。每個新入站通道都表示可能會發(fā)生意外或有意的數(shù)據(jù)泄露或應用程序損壞。

DevOps訪問權限

使用AZURE RBAC來限制DevOps可以對每個層執(zhí)行的操作。授予權限時,請使用最低特權原則。記錄所有管理操作并執(zhí)行定期審核,確保所有配置更改按計劃進行。

成本注意事項

使用Azure定價計算器估算成本。其他注意事項,請參閱Microsoft Azure Well-Architected框架的"成本"部分。

下面是在此體系結構中使用的服務的成本注意事項。

Azure防火墻

在此體系結構中,Azure防火墻部署在虛擬網(wǎng)絡中,以控制網(wǎng)關的子網(wǎng)與運行應用層的子網(wǎng)之間的流量。通過這種方式,Azure防火墻具有成本效益,因為它用作多個工作負荷所使用的共享解決方案。下面是Azure防火墻定價模型:

每個部署小時的固定費率。

每GB處理的數(shù)據(jù)支持自動縮放。

與網(wǎng)絡虛擬設備進行比較時(Nva),通過Azure防火墻,可節(jié)省多達30-50%的時間。有關詳細信息,請參閱Azure防火墻和NVA。

Azure Bastion

Azure堡壘通過RDP和SSH安全連接到虛擬機,而無需在虛擬機上配置公共IP。

堡壘計費相當于配置為jumpbox的基本低級別虛擬機。將堡壘與跳轉盒進行比較可以更經(jīng)濟高效地考慮堡壘的內置安全功能,存儲和管理單獨的服務器不會產生額外的成本。

Azure虛擬網(wǎng)絡

Azure虛擬網(wǎng)絡是免費的。允許每個訂閱在所有區(qū)域中最多創(chuàng)建50個虛擬網(wǎng)絡。虛擬網(wǎng)絡邊界內發(fā)生的所有流量都是免費的。因此,如果同一VNET中的兩個Vm彼此通信,則不會產生任何費用。

內部負載均衡器

位于同一虛擬網(wǎng)絡中的虛擬機之間的基本負載均衡是免費的。

在此體系結構中,內部負載均衡器用于對虛擬網(wǎng)絡內的流量進行負載均衡。

部署解決方案

GitHub上提供了可實施這些建議的參考體系結構部署。

先決條件

克隆、下載參考體系結構GitHub存儲庫的zip文件或創(chuàng)建其分支。

安裝Azure CLI 2.0。

安裝Node和NPM

安裝Azure構建基塊npm包。

Bash

npm install-g mspnp/azure-building-blocks

在命令提示符、bash提示符或PowerShell提示符下,按如下所示登錄到你的Azure帳戶:

Bash

az login

部署資源

導航到參考體系結構GitHub存儲庫的/dmz/secure-vnet-hybrid文件夾。

運行以下命令:

Bash

azbb-s<subscription_id>-g<resource_group_name>-l<region>-p onprem.json--deploy

運行以下命令:

Bash

azbb-s<subscription_id>-g<resource_group_name>-l<region>-p secure-vnet-hybrid.json--deploy

連接本地網(wǎng)關和Azure網(wǎng)關

此步驟連接兩個本地網(wǎng)絡網(wǎng)關。

在Azure門戶中,導航到創(chuàng)建的資源組。

找到名為ra-vpn-vgw-pip的資源,并復制“概述”邊欄選項卡中顯示的IP地址。

找到名為onprem-vpn-lgw的資源。

單擊“配置”邊欄選項卡。在“IP地址”下,粘貼步驟2中獲取的IP地址。

local-net-gw.png

單擊“保存”并等待操作完成??赡苄枰蠹s5分鐘。

找到名為onprem-vpn-gateway1-pip的資源。復制“概述”邊欄選項卡中顯示的IP地址。

找到名為ra-vpn-lgw的資源。

單擊“配置”邊欄選項卡。在“IP地址”下,粘貼步驟6中獲取的IP地址。

單擊“保存”并等待操作完成。

若要驗證連接,請轉到每個網(wǎng)關的“連接”邊欄選項卡。狀態(tài)應為“已連接”。

驗證網(wǎng)絡流量是否抵達Web層

在Azure門戶中,導航到創(chuàng)建的資源組。

找到名為的資源fe-config1-web,它是web層前面的負載均衡器。復制“概述”邊欄選項卡中的專用IP地址。

找到名為jb-vm1的VM。此VM表示本地網(wǎng)絡。單擊“連接”,使用遠程桌面連接到VM。用戶名和密碼已在onprem.json文件中指定。

在遠程桌面會話中打開Web瀏覽器,并導航到步驟2中獲取的IP地址。應會看到默認的Apache2服務器主頁。

立即登錄,閱讀全文
版權說明:
本文內容來自于Microsoft Azure,本站不擁有所有權,不承擔相關法律責任。文章內容系作者個人觀點,不代表快出海對觀點贊同或支持。如有侵權,請聯(lián)系管理員(zzx@kchuhai.com)刪除!
掃碼登錄
打開掃一掃, 關注公眾號后即可登錄/注冊
加載中
二維碼已失效 請重試
刷新
賬號登錄/注冊
個人VIP
小程序
快出海小程序
公眾號
快出海公眾號
商務合作
商務合作
投稿采訪
投稿采訪
出海管家
出海管家