部署符合 Oracle Cloud CIS 基础基准的安全体系框架

要在 Oracle Cloud 中运行工作负载,您需要一个可以高效运行的安全环境。此参考架构提供了一个基于 Terraform 的登录区域模板,该模板由 Internet 安全中心 (Center for Internet Security,CIS) 合规,可满足 CIS Oracle Cloud Infrastructure 基础基准中规定的安全指南。有关认证,请参见 https://www.cisecurity.org

体系结构

该架构从租户的区间设计以及职责分离的组和策略开始。 在 OCI 核心体系框架中,支持在指定的父区间内预配体系框架区间。每个登陆区域区间都分配有一个组,该组具有管理区间中资源以及访问其他区间中所需资源的相应权限。

OCI Core Landing Zone 能够以独立模式预配多个 VCN,或作为集线器和辐照式架构的组成部分,或通过 DMZ VCN 连接。VCN 可以遵循通用三层网络拓扑,也可以面向支持 OCI Kubernetes Engine (OKE) 或 Oracle Exadata Database Service 部署的特定拓扑。它们的配置开箱即用,具有必要的路由,并能正确保护其入站和出站接口。

着陆区域包括各种预配置的安全服务,这些服务可以与整体体系结构一起部署,以实现强大的安全态势。这些服务包括 Oracle Cloud Guard 、VCN 流日志、 OCI Connector Hub 、带客户管理的密钥的 OCI Vault 、OCI 漏洞扫描服务、安全区域和零信任包路由 (Zero Trust Packet Routing,ZPR)。使用主题和事件设置通知,以提醒管理员已部署资源中的更改。

下图说明了此参考体系结构。



oci-core-landingzone-oracle.zip

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

  • Tenancy

    租户是 Oracle 在您注册 Oracle Cloud Infrastructure 时在 Oracle Cloud 中设置的安全隔离分区。您可以在您的租户内的 Oracle Cloud 中创建、组织和管理您的资源。租户是公司或组织的同义词。通常,公司将具有单个租户,并在该租户内反映其组织结构。单个租户通常与单个订阅关联,而单个订阅通常只有一个租户。

  • 身份域

    身份域是一个容器,可用于管理用户和角色,联合和预配用户,通过单点登录 (SSO) 配置保护应用程序集成,以及进行基于 SAML/OAuth 的身份提供者管理。它表示 Oracle Cloud Infrastructure 及其关联配置和安全设置(例如 MFA)中的用户群体。

  • 策略

    Oracle Cloud Infrastructure Identity and Access Management 策略指定谁可以访问哪些资源以及如何访问。在组和区间级别授予访问权限,这意味着您可以编写策略,为组提供特定区间内或租户的特定类型的访问权限。

  • 划分

    区间是 Oracle Cloud Infrastructure 租户中的跨区域逻辑分区。使用区间来组织、控制访问并设置 Oracle Cloud 资源的使用限额。在给定的区间中,您可以定义用于控制资源访问和设置权限的策略。

    此登录区域模板中的资源预配在以下区间中:
    • 建议的封闭区间,包含下面列出的所有区间。
    • 用于所有网络资源的网络区间,包括所需的网络网关。
    • 用于日志记录、密钥管理和通知资源的安全区间。
    • 与应用相关的服务的应用区间,包括计算、存储、函数、流、Kubernetes 节点、API 网关等。
    • 用于所有数据库资源的数据库区间。
    • Oracle Exadata Database Service 基础结构的可选区间。

    图中的灰色图标指示模板未预配的服务。

    此区间设计反映了在不同组织中观察到的基本功能结构,通常在网络、安全性、应用程序开发和数据库管理员之间分离 IT 职责。

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

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

    模板可以针对不同的工作负载类型部署 VCN,包括适用于典型三层基于 Web 的应用的三层 VCN、 OCI Kubernetes Engine 应用和 Oracle Exadata Database Service

  • Internet 网关

    通过互联网网关,可以在 VCN 中的公共子网与公共互联网之间进行流量传输。

  • 动态路由网关 (DRG)

    DRG 是一个虚拟路由器,它为内部部署网络与 VCN 之间的专用网络流量提供路径,并且还可用于在同一区域或跨区域中的 VCN 之间路由流量。

  • NAT 网关

    通过 NAT 网关,VCN 中的专用资源可以访问互联网上的主机,而不会向传入的互联网连接公开这些资源。

  • 服务网关

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

  • Oracle 服务网络

    Oracle 服务网络 (OSN) 是 Oracle Cloud Infrastructure 中为 Oracle 服务预留的概念性网络。这些服务具有可通过互联网访问的公共 IP 地址。Oracle Cloud 之外的主机可以使用 Oracle Cloud Infrastructure FastConnect 或 VPN Connect 通过专用方式访问 OSN。VCN 中的主机可以通过服务网关私密地访问 OSN。

  • 网络安全组 (NSG)

    NSG 充当云资源的虚拟防火墙。借助 Oracle Cloud Infrastructure 的零信任安全模型,您可以控制 VCN 内的网络流量。NSG 由一组入站和出站安全规则组成,这些规则仅适用于单个 VCN 中的一组指定的 VNIC。

  • 事件

    Oracle Cloud Infrastructure 服务会发出事件,这些事件是描述资源变化的结构化消息。将针对创建、读取、更新或删除 (CRUD) 操作、资源生命周期状态更改以及影响云资源的系统事件发出事件。

  • 通知

    OCI Notifications 使用低延迟发布 - 订阅模式向分布式组件广播消息,为托管在 Oracle Cloud Infrastructure 上的应用提供安全、高度可靠、持久的消息。

  • Vault

    借助 Oracle Cloud Infrastructure Vault ,您可以集中管理加密密钥,保护您的数据和密钥凭证,以保护对云中资源的访问。可以使用 Vault 服务创建和管理 Vault、密钥和密钥。

  • 日志
    Oracle Cloud Infrastructure Logging 是一项高度可扩展、完全托管的服务,支持您从云端资源访问以下类型的日志:
    • 审计日志:与 OCI 审计生成的事件相关的日志。
    • 服务日志:各个服务(例如 OCI API 网关OCI 事件OCI 函数OCI 负载平衡OCI 对象存储和 VCN 流日志)发布的日志。
    • 定制日志:包含来自定制应用程序、其他云提供商或内部部署环境的诊断信息的日志。
  • 服务连接器

    Oracle Cloud Infrastructure Connector Hub 是一个云消息总线平台,可编排 OCI 服务之间的数据移动。可以使用服务连接器将数据从源服务移动到目标服务。服务连接器还允许您选择性地指定在将数据交付到目标服务之前要对数据执行的任务(例如函数)。

    您可以使用 Oracle Cloud Infrastructure Service Connector Hub 为 SIEM 系统快速构建日志记录聚合框架。

  • 云卫士

    Oracle Cloud Guard 可监视租户对可能造成安全问题的资源进行配置设置和操作,从而帮助您在 Oracle Cloud 中实现和维护强大的安全态势。

    您可以使用 Oracle Cloud Guard 监视和维护 Oracle Cloud Infrastructure 中资源的安全性。Cloud Guard 使用可以定义的检测器配方来检查资源是否存在安全弱点,并监视操作员和用户是否存在某些风险活动。检测到任何配置错误或不安全活动时,Cloud Guard 会根据您可以定义的响应器配方建议更正操作并帮助采取这些操作。

  • 安全区域

    安全区域与一个或多个区间和安全区域配方关联。在安全区域中创建和更新资源时,Oracle Cloud Infrastructure (OCI) 会根据安全区域配方中定义的策略列表来验证这些操作。如果违反了任何安全区域策略,则会拒绝该操作。

    安全区域可确保您的 OCI 资源符合您的安全策略,包括 Oracle Cloud Infrastructure ComputeOracle Cloud Infrastructure NetworkingOracle Cloud Infrastructure Object StorageOracle Cloud Infrastructure Block Volumes 和数据库资源。

  • 漏洞扫描服务

    Oracle Cloud Infrastructure 漏洞扫描服务通过例行检查端口和主机的潜在漏洞来帮助改善 Oracle Cloud 中的安全状况。该服务使用有关这些漏洞的度量和详细信息生成报告。

  • 零信任数据包路由

    Oracle Cloud Infrastructure Zero Trust Packet Routing (ZPR) 通过单独管理网络安全策略来防止未经授权的数据访问。ZPR 使用用户友好的、基于意图的策略语言来定义数据允许的访问路径。策略未明确定义的任何流量模式都无法遍历网络,这简化了数据保护并防止数据泄露。

  • 堡垒服务

    Oracle Cloud Infrastructure 堡垒服务通过基于身份、经过审计和有时限的安全 Shell (SSH) 会话,提供从特定 IP 地址到没有公共端点的目标 OCI 资源的限制访问。

  • 对象存储

    通过 OCI 对象存储,您可以快速访问任何内容类型的大量结构化和非结构化数据,包括数据库备份、分析数据和丰富的内容,例如图像和视频。您可以直接从互联网或云平台安全地存储数据。您可以在不降低性能或服务可靠性的情况下扩展存储。

推荐

使用以下建议作为为云环境设计和配置安全性的起点。您的要求可能不同于此处所述的体系结构。

  • 网络配置

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

  • 监视安全性

    使用 Oracle Cloud Guard 监视和维护 Oracle Cloud Infrastructure 中资源的安全性。Cloud Guard 使用检测器配方,您可以定义该配方来检查资源是否存在安全漏洞,以及监视操作员和用户是否有风险活动。检测到任何配置错误或不安全活动时,Cloud Guard 会根据您可以定义的响应器配方推荐更正操作并协助执行这些操作。

  • 安全的资源配置

    对于需要最高安全性的资源,请使用安全区域。安全区域是与 Oracle 定义的基于优秀实践的安全策略配方关联的区间。例如,不能从公共互联网访问安全区域中的资源,并且必须使用客户管理的密钥对其进行加密。在安全区域中创建和更新资源时,Oracle Cloud Infrastructure 将根据安全区域配方中的策略验证操作,并拒绝违反任何策略的操作。

注意事项

实现此引用体系结构时,请考虑以下因素:

  • 访问权限

    体系框架模板预配需要具有租户范围权限的用户(属于 Administrators 组成员的任何用户)。

    体系框架模板将资源预配为租户管理员(作为 Administrators 组成员的任何用户),并且包含允许单独的管理员组在初始预配后管理每个区间的策略。预配置的策略不涵盖 OCI 中可用的所有可能资源(例如,如果将资源添加到 Terraform 模板,您可能需要添加所需的附加策略语句)。

  • 网络配置

    着陆区域网络可以采用不同的方式进行部署:使用具有 Oracle Cloud Infrastructure DRG V2 服务的集线器和辐照架构中的一个或多个独立 VCN,或使用具有 Oracle Cloud Infrastructure DRG V2 的 DMZ VCN 架构。还可以配置没有 Internet 连接的网络。虽然着陆区域允许在独立和集线器与辐条器之间来回切换,但规划特定设计非常重要,因为切换时可能需要手动操作。

  • 部署指南

    GitHub 中的 OCI 核心体系框架部署指南提供了有关如何配置核心体系框架的详细指导,包括一些关键部署方案。

部署

此解决方案的 Terraform 代码位于 GitHub 中。只需单击一下即可将代码拉入 Oracle Cloud Infrastructure Resource Manager ,创建堆栈并部署堆栈。或者,也可以将代码从 GitHub 下载到您的计算机,定制代码,然后使用 Terraform CLI 部署架构。

  • 使用 Oracle Cloud Infrastructure Resource Manager 中的示例堆栈进行部署:
    1. 转至 部署到 Oracle Cloud

      如果您尚未登录,请输入租户和用户身份证明。

    2. 选择要部署堆栈的区域。
    3. 按照屏幕上的提示和说明创建堆栈。
    4. 创建堆栈后,单击 Terraform 操作,然后选择计划
    5. 等待作业完成,然后查看计划。

      要进行任何更改,请返回“堆栈详细信息”页,单击编辑堆栈,然后进行所需的更改。然后,再次运行计划操作。

    6. 如果不需要进一步更改,请返回“堆栈详细信息”页,单击 Terraform 操作,然后选择应用
  • 使用 GitHub 中的 Terraform 代码部署:
    1. 转至 GitHub
    2. 下载或克隆代码到本地计算机。
    3. 请按照自述文件中的说明操作。

更改日志

此日志列出了重大更改: