使用 Oracle Cloud Infrastructure Network Firewall Service 保护您的工作负载

Oracle Cloud Infrastructure (OCI) 提供一流的安全技术和运营流程来保护其企业云服务。但是,云中的安全性基于共同的责任模型。Oracle 负责底层基础设施的安全性,例如用于管理云运营和服务的数据中心设施、硬件和软件。客户负责安全地保护负载和配置服务和应用,以履行合规性义务。

OCI 网络服务为虚拟云网络 (virtual cloud network,VCN) 提供安全列表和网络安全组,客户可以使用这些网络来保护其负载。许多客户还要求使用入侵防护系统、入侵检测、SSL 检查、URL 过滤、流量检查等。

Oracle 与 Palo Alto Networks 合作,为您的 OCI VCN 提供由 Palo Alto Networks 支持的下一代托管网络防火墙服务 Oracle Cloud Infrastructure Network Firewall。Oracle Cloud Infrastructure Network Firewall 服务提供以下安全功能:
  • 有状态网络过滤:创建基于源 IP(IPv4 和 IPv6)、目标 IP(IPv4 和 IPv6)、端口和协议允许拒绝网络通信的有状态网络过滤规则。
  • 定制 URL 和 FQDN 过滤:将入站和出站流量限制为指定的全限定域名 (Fully Qualified Domain Name,FQDN) 列表,包括通配符和定制 URL。
  • 入侵检测和防护 (Intrusion Detection and Protection,IDPS):监视网络中是否有恶意活动。记录信息、报告或阻止活动。
  • SSL 检查:对加密服务器名称指示 (Encrypted Server Name Indication,ESNI) 支持安全漏洞的 TLS 加密流量进行解密和检查。ESNI 是 TLSv1.3 扩展,用于加密 TLS 握手中的服务器名称指示 (SNI)。
  • 日志记录:网络防火墙与 Oracle Cloud Infrastructure Logging 集成。根据防火墙的策略规则启用日志。
  • 度量:网络防火墙与 Oracle Cloud Infrastructure Monitoring 集成。使用监视服务功能根据阻止的请求数等度量启用预警。
  • VCN 内子网流量检查:通过网络防火墙在两个 VCN 子网之间路由流量。
  • VCN 间通信检查:通过网络防火墙在两个 VCN 之间路由流量。
此参考体系结构显示如何使用 OCI 网络防火墙服务保护在 Oracle Cloud Infrastructure 上运行的工作负载,并提供基于 Terraform 的模板来部署体系结构。

体系结构

此参考架构展示了组织如何使用网络防火墙保护 OCI 中部署的工作负载,并利用虚拟云网络 (VCN) 路由功能简化设计。为了保护这些负载,Oracle 建议使用分布式部署对网络进行细分,在这种部署中,流量通过网络防火墙进行路由,并连接到 VCN 中的多个不同的子网。

必须先定义防火墙策略,然后才能部署 OCI 网络防火墙。OCI 网络防火墙是 VCN 的给定专用防火墙子网的可用性域中的原生高可用性服务。部署后,您可以使用防火墙 IP 地址通过 VCN 路由表来路由流量。您必须对称路由到 OCI 网络防火墙 IP 地址,并应用所需的防火墙策略来支持您的用例。

可以使用网络防火墙对各种规模的组织提供下一代防火墙功能,对 VCN 之间(无论是在互联网上还是从内部部署中)或者从 Oracle 服务网络进行路由和检查。使用网络防火墙及其高级功能以及其他 OCI 安全服务创建分层网络安全解决方案。在您选择的子网中创建后,网络防火墙是一项可本地扩展的服务。防火墙将业务逻辑应用于在连接的防火墙策略中指定的通信。VCN 中的路由用于将网络流量定向到防火墙以及从防火墙传输。

可以将网络防火墙部署为:

  • 分布式网络防火墙模型:OCI 网络防火墙部署在推荐的专用 VCN 中。
  • 传输网络防火墙模型:OCI 网络防火墙部署在 Hub VCN 中,通过动态路由网关连接到请求 VCN。

此体系结构概述了如何在不同的模型、不同的流量流和关联的组件中部署网络防火墙。

下图说明了此引用体系结构。



oci-network-firewall-arch-oracle.zip

注意:

每个流量流确保将所需的网络防火墙策略推送到网络防火墙,并且路由对称用于将流量定向到网络防火墙和从网络防火墙定向。

通过互联网网关在安全的 VCN 中通过 OCI 网络防火墙的南北入站互联网流量


下面是 oci-network-firewall-inbound.png 的说明
插图 oci-network-firewall-inbound.png 的说明

oci-network-firewall-inbound-oracle.zip

通过互联网网关在安全的 VCN 中通过 OCI 网络防火墙的南北出站互联网流量


下面是 oci-network-firewall-outbound.png 的说明
插图 oci-network-firewall-outbound.png 的说明

oci-network-firewall-outbound-oracle.zip

通过 NAT 网关和安全 VCN 中通过 OCI 网络防火墙的南北出站互联网流量


下面是 oci-network-firewall-outbound-nat.png 的说明
插图 oci-network-firewall-outbound-nat.png 的说明

oci-network-firewall-outbound-nat-oracle.zip

在安全的 VCN 中通过 OCI 网络防火墙的南北入站内部部署流量


下面是 oci-network-firewall-inbound-prem.png 的说明
插图 oci-network-firewall-inbound-prem.png 的说明

oci-network-firewall-inbound-prem-oracle.zip

在安全的 VCN 中通过 OCI 网络防火墙的南北出站内部部署流量


下面是 oci-network-firewall-outbound-prem.png 的说明
插图 oci-network-firewall-outbound-prem.png 的说明

oci-network-firewall-outbound-prem-oracle.zip

西东子网 -A 到子网 -B 流量流通过安全 VCN 中的 OCI 网络防火墙


下面是 oci-network-firewall-subnet1.png 的说明
插图 oci-network-firewall-subnet1.png 的说明

oci-network-firewall-subnet-oracle1.zip

西东子网 -B 到子网 - 通过安全 VCN 中的 OCI 网络防火墙的流量


下面是 oci-network-firewall-subnet-b.png 的说明
插图 oci-network-firewall-subnet-b.png 的说明

oci-network-firewall-subnet-b-oracle.zip

西部子网 -A 到 OCI 服务的流量来自安全 VCN 中的 OCI 网络防火墙


下面是 oci-network-firewall-subnet.png 的说明
插图 oci-network-firewall-subnet.png 的说明

oci-network-firewall-subnet-oracle.zip

传输 OCI 网络防火墙部署架构


下面是 oci-network-firewall-transit-arch.png 的说明
插图 oci-network-firewall-transit-arch.png 的说明

oci-network-firewall-transit-arch-oracle.zip

从东方 Spoke Secured-B VCN 到 Spoke Secured-C VCN 流量流经 Hub Secured VCN-A 中的 OCI 网络防火墙


下面是 oci-network-firewall-spoke.png 的说明
插图 oci-network-firewall-spoke.png 的说明

oci-network-firewall-spoke-oracle.zip

该体系结构具有以下组成部分:

  • 区域

    Oracle Cloud Infrastructure 区域是一个局部地理区域,其中包含一个或多个数据中心,称为可用性域。区域独立于其他区域,而广阔的距离可以分离它们(跨国家甚至大陆)。

  • 区间

    区间是 Oracle Cloud Infrastructure 租户中的跨区域逻辑分区。使用区间在 Oracle Cloud 中组织资源,控制对资源的访问,以及设置使用限额。要控制对给定区间中资源的访问,您需要定义策略来指定谁可以访问资源以及他们可以执行的操作。

  • 可用性域

    可用性域是一个区域中的独立数据中心。每个可用性域中的物理资源都与其他可用性域中的资源隔离,因而具备容错能力。可用性域不共享电源、冷却设备或内部可用性域网络等基础设施。因此,一个可用性域出现故障不会影响区域中的其他可用性域。

  • 容错域

    故障域是可用性域内一组硬件和基础设施。每个可用性域都有三个具有独立电源和硬件的容错域。在多个容错域之间分配资源时,您的应用可以承受容错域中的物理服务器故障、系统维护和电源故障。

  • 虚拟云网络 (VCN) 和子网

    VCN 是可在 Oracle Cloud Infrastructure 区域中设置的可定制的软件定义网络。与传统的数据中心网络一样,VCN 允许您完全控制您的网络环境。VCN 可以具有多个不可重叠的 CIDR 块,您可以在创建 VCN 后更改这些块。您可以将 VCN 分段到子网,这些子网可以限定到区域或可用性域。每个子网包含一个连续的地址范围,这些地址与 VCN 中的其他子网不重叠。您可以在创建子网后更改其大小。子网可以是公共子网,也可以是专用子网。

  • 安全列表

    对于每个子网,您可以创建安全规则来指定必须允许传入和传出子网的通信的源、目标和类型。

  • 网络防火墙

    您选择的子网中存在的安全资源,它基于一组安全规则控制传入和传出网络流量。每个防火墙都与一个策略关联。流量通过互联网网关、NAT 网关、服务网关和动态路由网关 (Dynamic Routing Gateway,DRG) 等资源传入和传出防火墙。

  • Network Firewall 策略

    防火墙策略包含控制防火墙检查、允许或拒绝网络通信方式的所有配置规则。每个防火墙都与一个策略关联,但一个策略可以与多个防火墙关联。在策略内,列表和映射是用于帮助您以清晰简洁的方式表达规则的对象。

  • 路由表
    虚拟路由表包含将流量从子网路由到 VCN 之外的目的地(通常通过网关)的规则。在安全的 VCN 中,您可以具有以下路由表:
    • 安全 VCN 中的防火墙子网路由表可确保到互联网、内部部署、子网或 VCN 的流量到达目的地,此路由表与网络防火墙子网关联。
    • Internet 网关路由表可确保来自互联网的任何入站流量通过网络防火墙,此路由表与互联网网关关联。
    • NAT 网关路由表可确保互联网的任何返回响应通过网络防火墙,此路由表与 NAT 网关关联。
    • 服务网关路由表确保来自 Oracle 服务网络通信的任何返回响应都通过网络防火墙,此路由表已连接到服务网关。
    • 每个路由表确保您可以在 VCN 内进行通信,但是如果要在 VCN 的子网内使用网络防火墙,请确保正确路由指向网络防火墙 IP 地址。
    • DRG 防火墙 VCN 入站路由表附加到安全 VCN 连接,以通过动态路由网关将来自分支 VCN/内部部署的任何传入流量发送到网络防火墙专用 IP 地址。
    • 对于通过动态路由网关连接到防火墙 VCN 的每个请求,将定义一个不同的路由表并将其附加到关联的子网。此路由表通过网络防火墙专用 IP 地址将所有流量 (0.0.0.0/0) 从关联的请求 VCN 转发到动态路由网关。

    要维护流量对称,请确保具有指向网络防火墙的正确路由表条目。
  • 专用 IP

    用于对实例进行寻址的专用 IPv4 地址和相关信息。每个 VNIC 都有一个主要专用 IP,您可以添加和删除辅助专用 IP。实例上的主专用 IP 地址在实例启动期间附加,在实例生命周期内不变。辅助 IP 还应属于 VNIC 子网的同一 CIDR。辅助 IP 用作浮动 IP,因为它可以在同一子网内的不同实例上的不同 VNIC 之间移动。您还可以使用它作为不同的端点来托管不同的服务。

    OCI 网络防火墙不支持且需要辅助 IP。使用主防火墙 IP 地址将流量路由到防火墙进行通信检查。

  • 公共 IP
    网络服务定义 Oracle 选择的映射到专用 IP 的公共 IPv4 地址。
    • 临时:此地址是临时地址,在实例的有效期内存在。
    • 预留:此地址在实例的生命周期结束后仍然存在。它可以取消分配并重新分配给另一实例。
  • 计算配置

    计算实例的配置指定分配给实例的 CPU 数和内存量。计算配置还确定计算实例可用的 VNIC 数量和最大带宽。

  • 虚拟网络接口卡 (VNIC)

    Oracle Cloud Infrastructure 数据中心中的服务具有物理网络接口卡 (Network Interface Card,NIC)。虚拟机实例使用与物理 NIC 关联的虚拟 NIC (virtual NIC,VNIC) 进行通信。每个实例都有一个主 VNIC,它在启动期间自动创建和连接,在实例生命周期内可用。DHCP 仅提供给主 VNIC。您可以在实例启动后添加辅助 VNIC。应为每个接口设置静态 IP。

  • Internet 网关

    互联网网关允许 VCN 中的公共子网与公共互联网之间的通信。

  • NAT 网关

    NAT 网关允许 VCN 中的专用资源访问互联网上的主机,同时不会向传入的互联网连接公开这些资源。

  • 服务网关

    通过服务网关,可以从 VCN 访问其他服务,例如 Oracle Cloud Infrastructure Object Storage。从 VCN 到 Oracle 服务的流量通过 Oracle 网络结构传输,永远不会经过互联网。

  • FastConnect

    Oracle Cloud Infrastructure FastConnect 为您提供了一种在数据中心与 Oracle Cloud Infrastructure 之间创建专用、私有连接的简单方式。与基于 Internet 的连接相比,FastConnect 提供了更高的带宽选项和更可靠的网络体验。

建议

使用以下建议作为起点。您的要求可能不同于此处所述的体系结构。
  • VCN

    创建 VCN 时,根据计划连接到 VCN 中的子网的资源数量,确定所需的 CIDR 块数和每个块的大小。使用标准专用 IP 地址空间内的 CIDR 块。

    选择与要设置专用连接的任何其他网络(在 Oracle Cloud Infrastructure、您的内部部署数据中心或其他云提供商)不重叠的 CIDR 块。

    创建 VCN 后,您可以更改、添加和删除其 CIDR 块。

    设计子网时,请考虑流量和安全性要求。将特定层或角色中的所有资源连接到可以用作安全边界的同一子网。

  • Network Firewall 策略

    有关所需安全策略、端口和协议的最新信息,请参阅“浏览更多”部分中的网络防火墙策略文档。确保已将所需的策略推送到网络防火墙。

  • 网络防火墙
    要了解有关最新信息的更多信息,请参阅“浏览更多”部分中的网络防火墙文档。少数建议如下:
    • 最佳做法是,不要使用 OCI 网络防火墙子网部署任何其他资源,因为网络防火墙无法检查防火墙子网中源或目标的流量。
    • 部署分布式部署架构并使用区域防火墙子网。
    • 利用日志记录来提高安全性并查看流量。
    • 您可以使用度量、预警和通知监视网络防火墙的健康状况、容量和性能。
    • 为了更好地利用防火墙来确保其安全所有通信,请确保不要将有状态规则添加到连接到防火墙子网的安全列表中,或者将防火墙包括在包含有状态规则的网络安全组 (NSG) 中。
    • 与防火墙子网和 VNIC 关联的安全列表或网络安全组 (NSG) 规则在防火墙之前进行评估。确保任何安全列表或 NSG 规则都允许流量进入防火墙,以便对其进行适当评估。

考虑事项

使用网络防火墙在 OCI 上保护工作负载时,请考虑以下因素:

  • 性能
    • 选择由计算配置确定的正确实例大小将确定可用吞吐量、CPU、RAM 和接口数上限。
    • 组织需要知道哪些类型的流量遍历环境,确定适当的风险级别,并根据需要应用适当的安全控制。启用的安全控件的不同组合会影响性能。
    • 可以考虑为 FastConnect 或 VPN 服务添加专用接口。可以考虑使用大型计算配置来提高吞吐量和访问更多网络接口。
    • 运行性能测试以验证设计可以保持所需的性能和吞吐量。
  • 安全性
    • 您必须对称路由到 OCI 网络防火墙,以确保流量可以通过网络防火墙从源到目标。
    • 与防火墙子网和 VNIC 关联的安全列表或网络安全组 (NSG) 规则在防火墙之前进行评估。确保任何安全列表或 NSG 规则都允许流量进入防火墙,以便对其进行适当评估。
  • 日志记录

    如果关联策略中的规则支持防火墙,并且您已订阅 Oracle Cloud Infrastructure Logging,则可以为防火墙启用日志记录。日志显示日志活动以及指定时间范围内每个已记录事件的详细信息。日志显示当流量触发规则并帮助您提高安全性时。

  • 可用性
    • 将架构部署到不同的地理区域,从而实现卓越的冗余。
    • 为站点到站点 VPN 配置相关的组织网络,以实现与内部部署网络的冗余连接。
  • 成本

    每个 OCI 网络防火墙都会产生一定成本,如果您有大量 OCI VCN,请考虑使用组合的分布式和传输防火墙模型。仅在需要时部署网络防火墙。

部署

您可以使用控制台在 OCI 上部署网络防火墙。您还可以从 GitHub 下载代码并对其进行定制,以满足您的特定业务需求来部署此架构。

在 GitHub 中使用 Terraform 代码进行部署:
  1. 转至 GitHub
  2. 将存储库克隆或下载到本地计算机。
  3. 按照 README 文档中的说明进行操作。

确认

  • Authors: Arun Poonia, Troy Levin
  • Contributors: Vinay Rao