【发布时间】:2021-08-13 17:23:26
【问题描述】:
我在基于 yocto 的嵌入式 linux 系统中遇到问题。我已经追踪到 dbus 和 SELinux 之间的交互,使用 dbus-monitor 我可以看到以下错误:
error time=1621869986.514891 sender=org.freedesktop.DBus -> destination=:1.4 error_name=org.freedesktop.DBus.Error.AccessDenied reply_serial=69729
string "An SELinux policy prevents this sender from sending this message to this recipient, 0 matched rules; type="method_return", sender=":1.4" (uid=0 pid=905 comm="/usr/sbin/NetworkManager --no-daemon " label="system_u:system_r:NetworkManager_t:s0") interface="(unset)" member="(unset)" error name="(unset)" requested_reply="0" destination=":1.6390" (uid=0 pid=14426 comm="/opt/metix-embedded/metix-wg-ui " label="system_u:system_r:init_t:s0")"
但是,审计日志中没有“AVC denied”错误,所以我不能使用 audit2allow 来确定允许交互的 SELinux 规则。
如何从 dbus-monitor 错误中找出我需要的 SELinux 规则?
【问题讨论】:
-
静默拒绝可能来自 dontaudit 规则,您可以通过运行
semodule -DB禁用它们(-D 禁用 dontaudit 规则;-B 重建 selinux 策略)然后检查是否拒绝显示在审核日志中。运行semodule -B以在启用所有规则的情况下重建策略。 -
谢谢你,但它并没有揭示我的问题。当然它有效,我可以看到许多其他消息,但与 dbus 问题无关。
标签: yocto dbus selinux networkmanager