App Service 登陸區域加速器的網路拓撲和連線考慮
本文提供網路拓撲與連線的設計考慮和建議,您可以在使用 Azure App 服務 登陸區域加速器時套用。 網路是登陸區域中幾乎所有專案的核心。
此架構的網路拓撲和連線考慮取決於所裝載工作負載的需求,以及貴組織的安全性與合規性需求。
設計考量
當您在 Azure 上部署 App Service 解決方案時,必須仔細考慮網路需求,以確保應用程式正常運作。 規劃部署時需要考慮幾個主要因素:
判斷應用程式的網路需求。
- 連入流量。 如果您的應用程式提供 Web 型服務,例如網站或 API,則可能必須能夠接收來自因特網的連入流量。 為了確保您的應用程式可以接受連入連線,您必須設定它以接聽適當的埠。
- 存取其他 Azure 資源。 您的應用程式可能需要能夠使用其私人端點來存取 Azure 上的資源,例如記憶體帳戶或資料庫。 這些資源可能位於 Azure 虛擬網路或其他 Azure 服務內。
- SSL/TLS。 若要協助保護應用程式與其使用者之間的通訊,您必須啟用 SSL/TLS 加密。 這樣做可確保您的應用程式與其使用者之間的流量已加密,這有助於保護敏感性資訊不受第三方攔截。
- IP 限制。 視您的需求而定,您可能需要允許或封鎖從特定IP位址或範圍存取您的應用程式。 這樣做可以提供改善的安全性,並限制對特定使用者或位置的應用程式存取。
選擇 App Service 方案層。 使用應用程式的網路需求來判斷App Service 方案的適當層。 最好檢閱各種 App Service 方案層及其功能,以判斷哪一個最適合您的需求。
App Service 多租用戶服務
App Service 多租使用者解決方案會與單一部署單位中的其他 App Service 資源分享單一輸入 IP 位址和多個輸出 IP 位址。 這些IP位址可能會因為 各種原因而變更。 如果您需要多租使用者 App Service 解決方案的一致輸出 IP 位址,您可以設定 NAT 閘道 或使用 虛擬網路整合。
如果您需要 App Service 解決方案的專用 IP 位址,您可以使用 應用程式指派的位址、在 App Service 實例前面加上 應用程式閘道 (指派靜態 IP 位址),或使用 IP 型 SSL 憑證,透過 App Service 平臺將專用 IP 位址指派給您的應用程式。
當您需要從 App Service 解決方案連線到內部部署、私人或 IP 限制的服務時,請考慮:
- 在多租使用者 App Service 部署中,App Service 呼叫可能源自各種 IP 位址。 您可能需要 虛擬網路整合。
- 您可以使用 API 管理 和 應用程式閘道 等服務,在網路界限之間 Proxy 呼叫。 如果您需要靜態 IP 位址,這些服務可以提供靜態 IP 位址。
您可以針對多租使用者 App Service 部署使用私人或公用端點。 當您使用 私人端點時,會排除對 App Service 解決方案的公開曝光。 如果您需要透過因特網存取 App Service 解決方案的私人端點,請考慮使用 應用程式閘道 來公開 App Service 解決方案。
多租使用者 App Service 部署會 公開一組埠。 在多租使用者 App Service 部署中,無法封鎖或控制這些埠的存取。
正確規劃子網以進行輸出虛擬網路整合,並考慮所需的IP位址數目。 虛擬網路整合取決於專用子網路。 當您布建 Azure 子網時,Azure 會保留五個 IP。 每個 App Service 方案實例的整合子網會使用一個 IP 位址。 當您將應用程式調整為四個實例時,會使用四個IP位址。 當您相應增加或減少時,所需的位址空間會縮短一段時間。 這會影響指定子網大小的可用支持實例。
由於您無法在指派后變更子網的大小,因此您必須使用夠大的子網來容納應用程式可能達到的規模。 若要避免子網容量發生任何問題,請使用 /26 搭配 64 個位址進行虛擬網路整合。
如果您要連線到多租使用者 App Service 解決方案,而且您需要專用的輸出位址,請使用 NAT 閘道。
App Service 環境 (單一租使用者)
- 決定 App Service 環境 網路設計:外部或內部負載平衡器。 當您需要從因特網直接存取時,請使用外部部署。 使用內部負載平衡器部署,僅從部署 App Service 環境的虛擬網路中公開存取權。 後者的部署提供另一個層級的安全性和控制對應用程式的網路存取。
- App Service 環境 中的 App Services 會在 App Service 環境 的存留期內,取得輸入和輸出通訊的靜態專用 IP 位址。
- 當您需要從 App Service 環境 連線到內部部署、私人或IP限制的服務時,App Service 環境 會在虛擬網路的內容中執行。
- 當您部署 App Service 環境 時,您可以選擇子網的大小。 您稍後無法變更大小。 我們建議大小為 /24,其有 256 個位址,而且可以處理大小上限的 App Service 環境 和任何縮放需求。
設計建議
下列最佳做法適用於任何 App Service 部署。
- 連線 至 App Service 解決方案:
- 在您的 App Service 解決方案前面實作 Azure Web 應用程式防火牆 。 使用 Azure Front Door、應用程式閘道 或合作夥伴服務來提供此 OWASP 型保護。 您可以針對單一區域使用 Azure Front Door 或 應用程式閘道,或同時用於多個區域。 如果您需要區域中的路徑路由,請使用 應用程式閘道。 如果您需要多重區域負載平衡和 Web 應用程式防火牆,請使用 Azure Front Door。
- 藉由使用App Service 的私人端點,您可以透過私人網路型端點存取應用程式,而不是公用因特網型端點。 當您使用私人端點時,您可以將應用程式的存取限制為僅限虛擬網路中的使用者,這可為您的應用程式提供另一層安全性、降低數據輸出成本,以及改善效能。
- 使用存取限制來確保App Service解決方案只能從有效位置到達。 例如,如果多租使用者 App Service 部署裝載 API 且前面是 API 管理,請設定存取限制,讓 App Service 解決方案只能從 API 管理 存取。
- 從 App Service 解決方案 連線:
- 如果您需要與其他 Azure 服務的私人連線,請在服務支援時使用 Azure Private Link。
- 使用內建工具來針對網路問題進行疑難解答。
- 使用線上集區避免 SNAT 埠耗盡 。 重複建立與相同主機和埠的連線可能會導致響應時間變慢、間歇性 5xx 錯誤、逾時或外部端點連線問題。
- 請遵循 App Service Azure 安全性基準的網路安全性一節中所述的建議。
App Service 登陸區域加速器的網路拓撲和連線考慮目標是提供高階範本,以實作可調整且具彈性的環境來部署 App Services。 此範本著重於網路架構和連線能力,可協助您快速且有效率地在 Azure 中設定登陸區域,以裝載 App Services 解決方案。