Oracle RAC 的防火墙设置

趋势科技服务器深度安全防护系统支持:

  • SUSE Linux Enterprise Server 11 SP3 和 Oracle RAC 12c Release 1 (v12.1.0.2.0)
  • Red Hat Linux Enterprise Server 6.6 和 Oracle RAC 12c Release 1 (v12.1.0.2.0)
  • Red Hat Linux Enterprise Server 7.0 和 Oracle RAC 12c Release 1 (v12.1.0.2)

缺省 Linux 服务器趋势科技服务器深度安全防护系统策略与 Oracle RAC 环境兼容,但防火墙设置除外。由于 RAC 节点之间的通信通道比较复杂,受防火墙干扰,RAC 节点将无法创建虚拟 NIC 并扫描该 NIC。因此,Oracle Clusterware 将无法在某些节点上启动。对此,您可以禁用防火墙或定制防火墙设置。

添加规则以允许节点之间进行通信

  1. 在趋势科技服务器深度安全防护系统管理中心中,转至策略选项卡。
  2. 右键单击 Linux 服务器策略,然后单击复制
  3. 单击新的 Linux Server_2 策略,然后单击详细信息
  4. 为策略提供新名称,例如 "Oracle RAC",然后单击保存
  5. 单击防火墙
  6. 单击分配/取消分配
  7. 单击新建 > 新建防火墙规则
  8. 常规信息下,将名称设置为具有一定含义的名称,例如“允许与 Oracle 节点通信”。将操作设置为“强制允许”,并将协议设置为“任何”。
  9. 数据包源下,将 MAC 设置为“MAC 列表”。在出现的选择 MAC 列表中,选择“新建”。这时会显示“新建 MAC 列表属性”对话框。
  10. 为 MAC 列表提供一个名称,例如“Oracle RAC MAC 列表”。在 MAC:(每行一个 MAC) 下,添加所有 Oracle 节点使用的所有 MAC 地址(包括私有和公共 NIC 的 MAC)。完成后单击确定
  11. 数据包目标下,将 MAC 设置为“MAC 列表”。在出现的选择 MAC 列表中,选择在步骤 10 中创建的 MAC 列表,然后单击确定
  12. 确保在策略的“防火墙规则”列表中选择此新规则,并依次单击确定保存

添加规则以允许 UDP 端口 42424

按照上述步骤添加允许 UDP 端口 42424 的新规则。此端口号由群集同步服务守护程序 (CSSD)、Oracle 网格交互进程通信 (GIPCD) 和 Oracle HA 服务守护程序 (OHASD) 使用。

请注意,在上面创建的 MAC 列表可能无法涵盖此规则。此规则对 Oracle RAC 非常重要。

允许其他的 RAC 相关数据包

Oracle RAC 会发送大量帧类型为 C08A 和 0ACB 的数据包。阻止这些数据包可能会导致一些无法预测的行为。

  • 允许 TCP 端口 6200:数据包源数据包目标下的 IP 文本框中添加 RAC 节点的公共 IP 地址,并将目标端口设置为 6200。此端口号由 Oracle 通知服务 (ONS) 使用。此端口可配置,因此请在系统上检查该值,如果不是 6200,请设置正确的端口号。

  • 允许帧类型 C0A8:添加一个帧类型设置为“其他”、帧编号设置为 "C0A8" 的规则。

  • 允许帧类型 0ACB:添加一个帧类型设置为“其他”、帧编号设置为 "0ACB" 的规则。
  • 允许帧类型 0AC9:添加一个帧类型设置为“其他”、帧编号设置为 "0AC9" 的规则。
  • 允许 IGMP 协议:添加协议设置为 "IGMP" 的规则。

请参考以下链接,检查系统中是否还有其他 RAC 相关的组件需要额外的防火墙规则来允许特定端口:

https://docs.oracle.com/database/121/RILIN/ports.htm#RILIN1178

确保已分配 Oracle SQL Server 规则

检查是否已将 "Oracle SQL Server" 防火墙规则分配给 Linux 服务器策略。这是允许端口 1521 的预定义趋势科技服务器深度安全防护系统防火墙规则。

确保反规避设置设定为“正常”

在 Linux 服务器策略属性中,设置 > 网络引擎 > 防入侵设置缺省设为“正常”。如果此设置设定为“严格”,RAC 数据库响应速度将极慢。