使用防禦主機服務存取專用子網路中的資源

Oracle Cloud Infrastructure 防禦主機可針對沒有公用端點的資源提供專用、時間限制的 SSH 存取。

防禦主機是一項基礎架構服務,可取代您在 Oracle Cloud Infrastructure (OCI) 中建立的防禦主機伺服器。防禦主機是閘道或代理主機。它們是邏輯實體,為您無法從網際網路連線的雲端資源提供安全的存取權。防禦主機位於公用子網路中,並建立將使用者連線至專用子網路中資源所需的網路基礎架構。

Oracle Cloud Infrastructure Identity and Access Management (IAM) 整合可讓您控制誰可以管理防禦主機服務或防禦主機服務內的階段作業。與 Oracle Cloud Infrastructure Audit 整合可讓您監督防禦主機服務及防禦主機階段作業的相關管理動作。

架構

此架構顯示兩種連線專用子網路的方式。其中一種方法是透過中介目標子網路連線,另一種方法是直接連線至包含受保護資源的子網路。

建立防禦主機服務時,您可以指定 CIDR 區塊允許清單和最長階段作業存留時間。防禦主機建立時,會透過逆向連線,在防禦主機 VCN 與客戶 VCN 之間建立網路路徑。階段作業通常由使用者或操作員建立。

下圖說明此參考架構。

architecture-use-bastion-service.png 的描述如下
architecture-use-bastion-service.png 圖解描述

架構包含下列元件:

  • 區域

    Oracle Cloud Infrastructure 區域是一個區域化的地理區域,包含一或多個稱為可用性網域的資料中心。區域與其他區域無關,而且大型距離可以區隔 (跨國家或甚至洲)。

  • 可用性網域

    可用性網域是區域內獨立的獨立資料中心。每個可用性網域中的實體資源都會與其他可用性網域中的資源隔離,以提供容錯。可用性網域不會共用基礎架構,例如電源、冷卻或內部可用性網域網路。因此,一個可用性網域的失敗並不會影響區域中的其他可用性網域。

  • 容錯域

    容錯域是一組可用性網域內的硬體和基礎架構。每個可用性網域都有三個具有獨立電源和硬體的容錯域。當您將資源分配到多個容錯域時,應用程式可能會容許容錯域內的實體伺服器故障、系統維護和電源故障。

  • 虛擬雲端網路 (VCN) 和子網路

    VCN 是您在 Oracle Cloud Infrastructure 區域中設定的可自訂軟體定義網路。VCN 就像傳統資料中心網路一樣,可讓您完全控制網路環境。VCN 可以有多個非重疊的 CIDR 區塊,供您在建立 VCN 之後變更。您可以將 VCN 區隔為子網路,子網路範圍可為區域或可用性網域。每個子網路均包含一個未與 VCN 中其他子網路重疊的連續位址範圍。您可以在建立子網路之後變更子網路的大小。子網路可以是公用或專用。

  • 防禦主機服務

    防禦主機服務存在於 OCI 管理的基礎架構中,不需要基礎架構管理。受管理基礎架構是建立防禦主機公用端點的位置,可讓外部從屬端使用先前定義的階段作業進行連線。

  • 防禦主機服務後端

    防禦主機服務後端儲存用來授予目標系統存取權的階段作業組態和 SSH 公開金鑰。必要時,請使用服務閘道存取「防禦主機服務」後端。

  • 專用端點

    專用端點會將「防禦主機服務」連線至目標子網路。目標子網路可以是個別的子網路、更精細的控制項,或您要存取之執行處理的相同子網路

推薦

您的需求可能會與此處描述的架構不同。使用下列建議作為起點。

  • VCN

    建立 VCN 時,請根據計畫連附至 VCN 中子網路的資源數目,判斷所需的 CIDR 區塊數目和各個區塊的大小。使用標準專用 IP 位址空間內的 CIDR 區塊。

    選取未與想要設定專用連線之任何其他網路 (在 Oracle Cloud Infrastructure 中、您的內部部署資料中心或其他雲端提供者) 重疊的 CIDR 區塊。

    建立 VCN 之後,您可以變更、新增及移除其 CIDR 區塊。

    設計子網路時,請考量您的流量和安全需求。將特定層或角色內的所有資源連附至可作為安全界限的相同子網路。

    使用區域子網路。

    請注意,每個啟動設定的防禦主機都會從目標子網路取得兩個 IP 位址。根據要在特定子網路佈建的防禦主機數目,選擇 CIDR 區塊。例如,如果子網路的 CIDR 為/30,表示您有兩個可用的位址,而且如果該 CIDR 內有目標資源,那麼您沒有佈建防禦主機的足夠位址。在此情況下,防禦主機啟動設定將會失敗。建議將目標子網路的寬度設為大於/29。

  • 安全性

    使用 Oracle Cloud Guard 主動監督及維護您在 Oracle Cloud Infrastructure 中的資源安全。「雲端保全」使用可定義的偵測器方法來檢查安全弱點的資源,以及監督操作員和使用者是否有風險活動。偵測到任何組態錯誤或不安全的活動時,Cloud Guard 會建議更正動作,並根據您可以定義的回應器方法來協助採取這些動作。

    對於需要最高安全性的資源,Oracle 建議您使用安全區域。安全區域是與以最佳做法為基礎之 Oracle 定義的安全原則方法關聯的區間。例如,安全區域中的資源不得從公用網際網路存取,且必須使用客戶管理的金鑰加密。當您在安全區域中建立及更新資源時,Oracle Cloud Infrastructure 會根據 security-zone 處方中的原則驗證作業,並拒絕違反任何原則的作業。

  • OCI 防禦主機

    防禦主機層次的 TTL 將確保在該防禦主機的相關資訊環境中建立的階段作業不會有 TTL 大於防禦主機的 TTL。根據您的使用案例,您應該將 TTL 設為最低限制。最小值為 30 分鐘,最大值為 3 小時。TTL 也可以在階段作業層次設定。

    根據您的情況,允許縮小清單 CIDR 區塊的範圍。您可以使用此功能來限制允許 SSH 連線專用目標資源的 IP 位址範圍。

    必須思考建立防禦主機的目標子網路大小。每個防禦主機建立作業需要 2 個 IP 位址。因此,最好的範圍至少要有/29 個可用的 IP 位址。/30 有 2 個 IP 位址,但之後若要讓防禦主機的第二個執行處理指向相同的子網路,您將無法建立它。請記住、目標子網路可以是您目標資源所在的子網路、或是目標 VCN 中其他子網路允許其流量的子網路。

    安全原則建議

    • 子網路上具有目標資源的傳入規則應該只允許來自一個 IP 位址 (防禦主機的專用端點 IP) 的內送 TCP 流量。
    • 指定目的地上的確切連接埠,例如 22 (Linux)、3389 (Windows)、33060 (MySql) 等等。停止使用 ALL 的連接埠。

    針對管理和操作員情況使用特定的 IAM 原則。

考量

  • 區域

    防禦主機是一項區域服務。例如,客戶需要在 PHX 中建立防禦主機,才能存取 PHX 中的資源。例如,PHX 中的防禦主機無法用來存取 IAD 中的資源。

  • 效能

    防禦主機建立必須在 SLO 內 (要求建立期間為 2 分鐘)。階段作業建立/終止應該在 SLO 內。連接埠轉送為 1 分鐘 (緊急類別分析藍本),而管理的 SSH 階段作業為 3 分鐘。(正常使用狀況)

  • 安全性

    防禦主機的流量源自子網路上的專用端點。為了允許防禦主機的流量,請允許從此專用端點傳入和傳出流量至必須透過防禦主機存取的 IP。限制存取執行處理子集的微點原則有助於確保正確的存取層次。

  • 使用狀態

    此服務應提供高可用性以建立/終止防禦主機和階段作業 (根據 API 錯誤率)。目標可用性為 99.9%。

  • 成本

    使用 OCI 防禦主機沒有費用。客戶可以為每個租用戶的每個區域建立最多五個防禦主機。每個防禦主機都提供 VCN 內的目標資源。

  • 使用案例

    如果客戶想要存取執行 OCI 原生映像檔的專用目標主機,是以 Linux 為基礎並執行 OCA v2 代理程式 (其中啟用防禦主機 Plugin),則可以使用受管理 SSH 階段作業。如果客戶想要存取未執行代理程式的專用目標資源、以 Windows 為基礎或存取資料庫 (ATP 或 MySQL),則可以使用連接埠轉送 SSH 階段作業。