为 SAP HANA 使用 SELinux


Red Hat Enterprise Linux for SAP Solutions 9

Red Hat Customer Content Services

摘要

配置 SELinux 可帮助您增强系统的安全性。SELinux 是一种强制访问控制(MAC)的实现,它提供额外的安全层。SELinux 策略定义了用户和进程如何与系统上的文件进行交互。您可以通过将用户映射到特定的 SELinux 受限用户来控制哪些用户可以执行哪些操作。

使开源包含更多

红帽承诺替换我们的代码和文档中存在问题的语言。我们从这四个术语开始:master、slave、黑名单和白名单。由于这一努力的精力,这些更改将在即将发布的版本中逐渐实施。有关让我们的语言更加包含的更多详情,请参阅我们的CTO Chris Wright 信息

对红帽文档提供反馈

我们感谢您对我们文档的反馈。让我们了解如何改进它。

通过 Jira 提交反馈(需要帐户)

  1. 确保您已登录到 JIRA 网站。
  2. 通过单击此链接 来提供反馈。https://issues.redhat.com/secure/CreateIssueDetails!init.jspa?pid=12330720&issuetype=3&components=12387093&priority=10200&summary=Doc&description=Please+include+the+Document+URL,+the+section+number+and%20+describe+the+issue&labels=SAP_DOCS&customfield_12311140=SAPOCP-775&assignee=rh-ee-pmohta
  3. Summary 字段中输入描述性标题。
  4. Description 字段中输入您对改进的建议。包括文档相关部分的链接。
  5. 如果要通知将来的更新,请确保已分配为 Reporter
  6. 点对话框底部的 Create

第 1 章 SELinux 简介

SELinux 通过强制安全策略提供增强安全性,使用文件、进程和端口的标签以及日志记录未经授权的访问尝试。

默认情况下,SELinux 在 RHEL 9 上启用并设置为 enforcing 模式,红帽会维护系统进程的安全策略。如需更多信息,请参阅 更改 RHEL 上的 SELinux 状态和模式。您可以参考 SAP Note 3108302 - SAP HANA DB:推荐 RHEL 9 的建议操作系统设置,以了解 SAP 已测试哪个 HANA 版本,并将 SELinux 设置为 enforcingunconfined 模式。

红帽建议您在 enforcing 模式下使用 SELinux 来配置在 SAP HANA 上运行的 RHEL 系统。本文档描述了您必须进行的必要配置更改。

如果您在测试或运行 SAP HANA 系统时遇到与 SELinux 相关的问题,SAP 保留禁用 SELinux 的权利。但是,大多数问题可以通过将 SELinux 模式从 enforcing 模式更改为 permissive 来解决。这样做的好处是,在分析和解决问题的同时,您的系统仍然正常运行。

第 2 章 配置 SELinux 以排除 SAP HANA 目录

默认情况下,如果您的 RHEL 系统运行时,没有定义 SELinux 安全策略的任何应用程序都会被 SELinux 阻止。目前,SAP 不会为 SAP HANA 提供 SELinux 策略。对于在 SELinux 设置为 enforcing 时运行 SAP HANA 可执行文件,必须设置特定的 SELinux 布尔值,并且 SAP HANA 相关目录必须从 SELinux 保护中排除。您还可以使用 fapolicyd 框架来保护 SAP HANA 软件。如需更多信息,请参阅配置 fapolicyd 以只允许 SAP HANA 可执行文件 文档。

先决条件

  • SAP HANA 已安装并停止,或尚未安装。
  • SELinux 可用,并设置为 enforcing 模式。
  • 安装了 SAP HANA 及相关软件的目录(通常是 /hana/usr/sap)。

流程

  1. 使用以下命令,将 SELinux 布尔值 selinuxuser_execmod 设置为 1,允许无限制的可执行文件使用需要文本重定位的库(如 SAP HANA):

    # setsebool -P selinuxuser_execmod 1
    Copy to Clipboard Toggle word wrap
  2. 使用以下命令重新标记 SAP HANA 使用的目录和文件(通常为 /hana/usr/sap),以便 SAP HANA 可以在未限制模式下运行:

    # semanage fcontext -a -t usr_t ‘/hana(/.)?’*
    # semanage fcontext -a -t usr_t ‘/usr/sap(/.)?’*
    # restorecon -Rv ‘/hana’
    # restorecon -Rv ‘/usr/sap’
    Copy to Clipboard Toggle word wrap
    注意

    您可以在安装 SAP HANA 之前或之后执行此步骤,因为上一级目录下所有新创建的目录和文件都继承 SELinux 标签。

验证

  • 使用以下命令显示 /usr/bin/hana 下的文件或目录的安全上下文,确认 /hana 下的文件或目录具有 usr_t 标签:

    [root@host01 ~]# ls -lZ /usr/bin/ls
    -rwxr-xr-x. 1 root root system_u:object_r:bin_t:s0 143296 Jan  6  2023 /usr/bin/ls
    [root@host01 ~]# ls -lZd /hana/shared
    drwxr-xr-x. 3 root root system_u:object_r:usr_t:s0 17 Apr 18 23:03 /hana/shared
    Copy to Clipboard Toggle word wrap

第 3 章 故障排除与 SELinux 相关的问题

要诊断与 SELinux 相关的问题,您可以检查文件 /var/log/audit/audit.log,如下所示:

  1. 要查询审计日志,请使用 ausearch 工具。SELinux 决策(如允许或禁止访问)会在 Access Vector Cache (AVC)中缓存。因此,您应该将 AVCUSER_AVC 值用于 message type 参数,例如:

    # ausearch -m AVC,USER_AVC,SELINUX_ERR,USER_SELINUX_ERR -ts boot
    Copy to Clipboard Toggle word wrap
  2. 如果没有匹配项,请检查 audit 守护进程是否正在运行。
  3. 如果它没有运行,请执行以下步骤:

    1. 重新启动审计。
    2. 重新运行拒绝的场景。
    3. 再次检查审计日志。

    有关解决 SELinux 相关问题的更多信息,请参阅 SELinux 故障排除

第 4 章 附加信息

  • 根据您的环境(云供应商、第三方用户工具和代理),您应该在附加挂载点(/opt/sapmnt/trans)上更改 SELinux 标签。

法律通告

Copyright © 2024 Red Hat, Inc.
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, the Red Hat logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat
返回顶部