SELinux 阻止 /usr/bin/mongod 搜索访问

SELinux 阻止 /usr/bin/mongod 搜索访问

我的问题与其他人的问题类似,例如SELinux 阻止 mongod 搜索访问。在这种情况下,我安装 snapd 的原因与 Mongodb 完全无关。那是大约一周前(2023 年 2 月 5 日)。该包创建了 /var/lib/snapd。

就在今天早上,MongoDB 决定搜索该目录,并且在尝试搜索该目录时生成了 2207 个 SELinux 拒绝。

但是为什么 MongoDB 决定尝试搜索 /var/lib/snapd 以及我如何让它停止?

以下是“sealert”的报告。

found 1 alerts in /var/log/audit/audit.log
--------------------------------------------------------------------------------

SELinux is preventing /usr/bin/mongod from search access on the directory /var/lib/snapd.

*****  Plugin catchall (100. confidence) suggests   **************************

If you believe that mongod should be allowed search access on the snapd directory by default.
Then you should report this as a bug.
You can generate a local policy module to allow this access.
Do
allow this access for now by executing:
# ausearch -c 'ftdc' --raw | audit2allow -M my-ftdc
# semodule -i my-ftdc.pp


Additional Information:
Source Context                system_u:system_r:mongod_t:s0
Target Context                system_u:object_r:snappy_var_lib_t:s0
Target Objects                /var/lib/snapd [ dir ]
Source                        ftdc
Source Path                   /usr/bin/mongod
Port                          <Unknown>
Host                          <Unknown>
Source RPM Packages           mongodb-org-server-4.2.23-1.el7.x86_64
Target RPM Packages           snapd-2.57.6-2.el7.x86_64
Policy RPM                    selinux-policy-3.13.1-268.el7_9.2.noarch
Selinux Enabled               True
Policy Type                   targeted
Enforcing Mode                Enforcing
Host Name                     tempest
Platform                      Linux tempest 3.10.0-1160.81.1.el7.x86_64 #1 SMP
                              Fri Dec 16 17:29:43 UTC 2022 x86_64 x86_64
Alert Count                   2207
First Seen                    2023-02-16 09:47:11 EST
Last Seen                     2023-02-16 10:18:16 EST
Local ID                      1b1e89fc-b993-4261-be54-36b61b36c408

注意第一次出现和最后一次出现之间的时间间隔很短(我在那时关闭了 MongoDB)。大约 30 分钟内有 2207 次拒绝。一开始就没有理由开始。

我的 Mongodb 配置与之前的发帖者类似:

# mongod.conf

# for documentation of all options, see:
#   http://docs.mongodb.org/manual/reference/configuration-options/

# where to write logging data.
systemLog:
  destination: file
  logAppend: true
  path: /var/log/mongodb/mongod.log

# Where and how to store data.
storage:
  dbPath: /var/lib/mongo
  journal:
    enabled: true
#  engine:
#  wiredTiger:

# how the process runs
processManagement:
  fork: true  # fork and run in background
  pidFilePath: /var/run/mongodb/mongod.pid  # location of pidfile
  timeZoneInfo: /usr/share/zoneinfo

# network interfaces
net:
  port: 27017
  bindIp: 127.0.0.1  # Enter 0.0.0.0,:: to bind to all IPv4 and IPv6 addresses or, alternatively, use the net.bindIpAll setting.

我感谢您提供的任何帮助。

答案1

在 RHEL9 上,MongoDB7 也遇到了与 FTDC 类似的问题。

我没有在 SELinux 上创建新策略,而是在 /etc/mongod.conf 中添加了以下几行

setParameter:
  diagnosticDataCollectionEnabled: false

您可以在此链接上找到更多信息:SELinux 阻止 mongod 搜索访问

相关内容