RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Bug 2063195 - insights-client-results.service gets selinux denials and permission denied
Summary: insights-client-results.service gets selinux denials and permission denied
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 8
Classification: Red Hat
Component: selinux-policy
Version: 8.6
Hardware: All
OS: Linux
high
high
Target Milestone: rc
: 8.7
Assignee: Zdenek Pytela
QA Contact: Milos Malik
URL:
Whiteboard:
Depends On: 2062136
Blocks: 2022191 2070323 2087069 2089435 2109244
TreeView+ depends on / blocked
 
Reported: 2022-03-11 13:56 UTC by Priscila Gutierres
Modified: 2022-11-08 12:22 UTC (History)
18 users (show)

Fixed In Version: selinux-policy-3.14.3-99.el8
Doc Type: No Doc Update
Doc Text:
Clone Of: 2062136
Environment:
Last Closed: 2022-11-08 10:44:11 UTC
Type: Bug
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
insights-journal-rhel-8 (7.23 KB, text/plain)
2022-05-31 12:00 UTC, Christian Labisch
no flags Details
insights-journal-rhel-9 (3.98 KB, text/plain)
2022-05-31 12:01 UTC, Christian Labisch
no flags Details
output of ausearch -m avc -ts yesterday (407.32 KB, text/plain)
2022-08-31 00:13 UTC, Vadym Chepkov
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Github fedora-selinux selinux-policy pull 1197 0 None Merged Label /var/cache/insights with insights_client_cache_t 2022-05-23 12:15:22 UTC
Red Hat Issue Tracker RHELPLAN-115347 0 None None None 2022-03-11 14:15:28 UTC
Red Hat Product Errata RHBA-2022:7691 0 None None None 2022-11-08 10:45:03 UTC

Comment 1 Zdenek Pytela 2022-05-19 09:27:20 UTC
Commit to backport:
commit dc53081a9d62404d6ce075321a54bb720a2dc69d (HEAD -> rawhide, upstream/rawhide)
Author: Zdenek Pytela <zpytela>
Date:   Wed May 18 20:45:14 2022 +0200

    Label /var/cache/insights with insights_client_cache_t

Comment 2 Charles Surett 2022-05-20 23:39:48 UTC
This also gets avc denials when trying to look up cert-api.access.redhat.com with the following denial message


 avc:  denied  { write } for  pid=148559 comm="platform-python" laddr=172.31.0.8 lport=48971 faddr=172.31.0.1 fport=53 scontext=system_u:system_r:insights_client_t:s0 tcontext=system_u:system_r:insights_client_t:s0 tclass=udp_socket permissive=0

Comment 3 Zdenek Pytela 2022-05-23 15:59:30 UTC
(In reply to Charles Surett from comment #2)
> This also gets avc denials when trying to look up cert-api.access.redhat.com
> with the following denial message
> 
> 
>  avc:  denied  { write } for  pid=148559 comm="platform-python"
> laddr=172.31.0.8 lport=48971 faddr=172.31.0.1 fport=53
> scontext=system_u:system_r:insights_client_t:s0
> tcontext=system_u:system_r:insights_client_t:s0 tclass=udp_socket
> permissive=0

This one is expected be fixed as a part of bz#2087069

Comment 4 Zdenek Pytela 2022-05-23 16:03:01 UTC
(In reply to Zdenek Pytela from comment #3)
> (In reply to Charles Surett from comment #2)
> > This also gets avc denials when trying to look up cert-api.access.redhat.com
> > with the following denial message
> > 
> > 
> >  avc:  denied  { write } for  pid=148559 comm="platform-python"
> > laddr=172.31.0.8 lport=48971 faddr=172.31.0.1 fport=53
> > scontext=system_u:system_r:insights_client_t:s0
> > tcontext=system_u:system_r:insights_client_t:s0 tclass=udp_socket
> > permissive=0
> 
> This one is expected be fixed as a part of bz#2087069

It actually was bz#2073395, there is a build selinux-policy-3.14.3-98.el8 which addresses it.

Comment 13 Christian Labisch 2022-05-31 12:00:37 UTC
Created attachment 1885492 [details]
insights-journal-rhel-8

RHEL 8 : Insights related journal entries

Comment 14 Christian Labisch 2022-05-31 12:01:34 UTC
Created attachment 1885493 [details]
insights-journal-rhel-9

RHEL 9 : Insights related journal entries

Comment 15 Christian Labisch 2022-05-31 12:10:02 UTC
$ systemctl list-unit-files | grep insights

insights-client-results.path               enabled  
insights-client-boot.service               disabled 
insights-client-results.service            static   
insights-client.service                    static   
insights-client.timer                      enabled

Enabling/Starting insights-client-boot.service fails.

Comment 17 Peter Vreman 2022-08-11 10:24:57 UTC
For my AWS systems with RHEL8.6 I needed all below rules to have a SELinux clean run of insights-client from systemd
~~~
allow insights_client_t gconf_home_t:dir search;
allow insights_client_t hostname_exec_t:file { getattr open read execute };
allow insights_client_t systemd_notify_exec_t:file { getattr open read execute };
~~~

The PR attached to this BZ includes on the gconf_home_t, can you please confirm that the proposed fix will also fix all the other 2 rules?

Comment 18 Zdenek Pytela 2022-08-11 11:28:27 UTC
The permission are in the current policy version:

rhel87# rpm -q selinux-policy
selinux-policy-3.14.3-105.el8.noarch

rhel87# sesearch -A -s insights_client_t -t gconf_home_t -c dir -p search
allow insights_client_t file_type:dir { getattr ioctl lock open read search };
allow insights_client_t gconf_home_t:dir { getattr open search };
allow insights_client_t non_security_file_type:dir { getattr ioctl lock open read search };

rhel87# sesearch -A -s insights_client_t -t hostname_exec_t -c file -p getattr,open,read,execute
allow insights_client_t exec_type:file { execute execute_no_trans getattr ioctl lock map open read };
allow insights_client_t hostname_exec_t:file { execute execute_no_trans getattr ioctl lock map open read };
allow insights_client_t non_security_file_type:file { getattr ioctl lock open read };

rhel87#
rhel87# sesearch -A -s insights_client_t -t systemd_notify_exec_t -c file -p getattr,open,read,execute
allow insights_client_t exec_type:file { execute execute_no_trans getattr ioctl lock map open read };
allow insights_client_t non_security_file_type:file { getattr ioctl lock open read };

It is important though to test actual scenarios as implementation in the policy may not be that straightforward, e. g. include transitions.

Comment 19 Peter Vreman 2022-08-11 13:20:38 UTC
The BZ mentions 'Fixed In Version: selinux-policy-3.14.3-99.el8'. The above results are from selinux-policy-3.14.3-105.el8.noarch.
The above results are for RHEL8.7 and i need RHEL8.6-EUS.

It is now already 3+ months since RHEL8.6 is out this major issue is still not fixed.

Comment 20 Zdenek Pytela 2022-08-11 14:12:48 UTC
(In reply to Peter Vreman from comment #19)
> The BZ mentions 'Fixed In Version: selinux-policy-3.14.3-99.el8'. The above
> results are from selinux-policy-3.14.3-105.el8.noarch.
> The above results are for RHEL8.7 and i need RHEL8.6-EUS.
This is a RHEL 8.7 bz so I checked the latest package available.
I've just also checked in RHEL 8.6.z with selinux-policy-3.14.3-95.el8_6.3 the results are the same as the policy was backported completely, the same applies to 9.1 and 9.0.z.

> It is now already 3+ months since RHEL8.6 is out this major issue is still
> not fixed.
The PR attached to this bz contains just an initial commit before it was fully reproduced with different scenarios.
The actual fix contained 36 commits and also a change in the insights-client package.
I am sorry it took quite a long time to gather all relevant information, spread into multiple bugzillas, and deliver a fix for all of them. he issue as such was more convoluted than expected.

The RHEL 8.6 bz is in the verified state since August 5th.
https://bugzilla.redhat.com/show_bug.cgi?id=2103606

Comment 21 Christian Labisch 2022-08-17 13:45:23 UTC
(In reply to Zdenek Pytela from comment #20)
> (In reply to Peter Vreman from comment #19)
> > The BZ mentions 'Fixed In Version: selinux-policy-3.14.3-99.el8'. The above
> > results are from selinux-policy-3.14.3-105.el8.noarch.
> > The above results are for RHEL8.7 and i need RHEL8.6-EUS.
> This is a RHEL 8.7 bz so I checked the latest package available.
> I've just also checked in RHEL 8.6.z with selinux-policy-3.14.3-95.el8_6.3
> the results are the same as the policy was backported completely, the same
> applies to 9.1 and 9.0.z.
> 
> > It is now already 3+ months since RHEL8.6 is out this major issue is still
> > not fixed.
> The PR attached to this bz contains just an initial commit before it was
> fully reproduced with different scenarios.
> The actual fix contained 36 commits and also a change in the insights-client
> package.
> I am sorry it took quite a long time to gather all relevant information,
> spread into multiple bugzillas, and deliver a fix for all of them. he issue
> as such was more convoluted than expected.
> 
> The RHEL 8.6 bz is in the verified state since August 5th.
> https://bugzilla.redhat.com/show_bug.cgi?id=2103606

When will selinux-policy-3.14.3-95.el8_6.3 be available, Zdenek ? The latest I see is selinux-policy-3.14.3-95.el8_6.1, which I have installed. As of today nothing changed ... the issues are still occurring.

insights-client-results.service: Main process exited, code=exited, status=1/FAILURE
systemd[1]: insights-client-results.service: Failed with result 'exit-code'.
systemd[1]: Failed to start Check for insights from Red Hat Cloud Services.

SELinux is preventing /usr/libexec/platform-python3.6 from search access on the directory .local.
SELinux is preventing /usr/libexec/platform-python3.6 from open access on the file /var/log/insights-client/insights-client.log.

$ sudo dnf list installed | grep selinux-policy
selinux-policy.noarch                                    3.14.3-95.el8_6.1
selinux-policy-targeted.noarch                           3.14.3-95.el8_6.1

Comment 22 Zdenek Pytela 2022-08-18 19:47:13 UTC
(In reply to Christian Labisch from comment #21)
> When will selinux-policy-3.14.3-95.el8_6.3 be available, Zdenek ? The latest
> I see is selinux-policy-3.14.3-95.el8_6.1, which I have installed. As of
> today nothing changed ... the issues are still occurring.

The next RHEL 8.6 batch update has 2022-09-13 as a release date, but an earlier (async) update was requested. I can keep you informed if you wish.

Comment 23 Christian Labisch 2022-08-19 12:45:10 UTC
(In reply to Zdenek Pytela from comment #22)
> (In reply to Christian Labisch from comment #21)
> > When will selinux-policy-3.14.3-95.el8_6.3 be available, Zdenek ? The latest
> > I see is selinux-policy-3.14.3-95.el8_6.1, which I have installed. As of
> > today nothing changed ... the issues are still occurring.
> 
> The next RHEL 8.6 batch update has 2022-09-13 as a release date, but an
> earlier (async) update was requested. I can keep you informed if you wish.

Thank you, Zdenek ! Not necessary to inform me, I check for updates on a daily basis. The earlier the new version ships, the better ... :)

Comment 24 Zdenek Pytela 2022-08-26 07:15:10 UTC
Sharing just in case that selinux-policy-3.14.3-95.el8_6.4 has been released as an update for RHEL 8.6.

Comment 25 Christian Labisch 2022-08-26 07:55:34 UTC
(In reply to Zdenek Pytela from comment #24)
> Sharing just in case that selinux-policy-3.14.3-95.el8_6.4 has been released
> as an update for RHEL 8.6.

Thank you, Zdenek ! :) Here are the latest messages after having installed the new selinux-policy builds.

RHEL 8.6 : selinux-policy 3.14.3-95.el8_6.4 ->

Failed to start Check for insights from Red Hat Cloud Services.
SELinux is preventing /usr/libexec/platform-python3.6 from rename access on the file insights-client.log.
SELinux is preventing /usr/libexec/platform-python3.6 from unlink access on the file insights-client.log.3

RHEL 9.0 : selinux-policy 34.1.29-1.el9_0.2 ->

Failed to start Check for insights from Red Hat Cloud Services.
SELinux is preventing /usr/bin/python3.9 from write access on the file insights-client.pid.
SELinux is preventing /usr/bin/python3.9 from rename access on the file insights-client.log.

Comment 26 Vadym Chepkov 2022-08-31 00:10:54 UTC
FYI,

I have selinux-policy-3.14.3-95.el8_6.4.noarch installed and audit log is full with insights_client_t related entries. I will attach a file instead posting it all here

Comment 27 Vadym Chepkov 2022-08-31 00:13:52 UTC
Created attachment 1908611 [details]
output of ausearch -m avc -ts yesterday

Comment 28 Sigbjorn Customer 2022-09-22 19:41:16 UTC
Even with the latest selinux-policy rpm mentioned above, the following error is logged in /var/log/insights-client/insights-client.log

2022-09-22 21:34:56,210    DEBUG insights.client.archive Deleting previous archive /var/tmp/insights-client/insights-archive-709_dedr
2022-09-22 21:34:56,210    ERROR insights.client.phase.v1 Fatal error
Traceback (most recent call last):
  File "/var/lib/insights/last_stable.egg/insights/client/phase/v1.py", line 32, in _f
    func(client, config)
  File "/var/lib/insights/last_stable.egg/insights/client/phase/v1.py", line 314, in collect_and_output
    insights_archive = client.collect()
  File "/var/lib/insights/last_stable.egg/insights/client/__init__.py", line 72, in _init_connection
    return func(self, *args, **kwargs)
  File "/var/lib/insights/last_stable.egg/insights/client/__init__.py", line 392, in collect
    tar_file = client.collect(self.config)
  File "/var/lib/insights/last_stable.egg/insights/client/client.py", line 294, in collect
    archive = InsightsArchive(config)
  File "/var/lib/insights/last_stable.egg/insights/client/archive.py", line 49, in __init__
    self.tmp_dir = tempfile.mkdtemp(dir=constants.insights_tmp_path, prefix='insights-archive-')
  File "/usr/lib64/python3.6/tempfile.py", line 370, in mkdtemp
    _os.mkdir(file, 0o700)
PermissionError: [Errno 13] Permission denied: '/var/tmp/insights-client/insights-archive-fx6qh0qz'
2022-09-22 21:34:56,537    DEBUG insights_client Attempt failed.


Which in turn causes the Insights Advisory: "System is not able to get the latest recommendations and may miss bug fixes when the Insights Client Core egg file is outdated"

Comment 30 minlxs 2022-10-24 12:16:44 UTC
Adding the following contexts:

require {
        type firewalld_t;
        type syslogd_var_run_t;
        type ipp_port_t;
        type lvm_control_t;
        type krb5_keytab_t;
        type certmonger_t;
        type random_device_t;
        type var_run_t;
        type devlog_t;
        type node_t;
        type semanage_store_t;
        type insights_client_etc_t;
        type admin_home_t;
        type vsock_device_t;
        type insights_client_t;
        class file { create getattr link map read unlink write };
        class tcp_socket name_connect;
        class process setrlimit;
        class vsock_socket create;
        class sock_file write;
        class dbus send_msg;
        class chr_file { read write };
        class udp_socket node_bind;
}

#============= insights_client_t ==============

allow insights_client_t admin_home_t:file { create link unlink write };
allow insights_client_t certmonger_t:dbus send_msg;
allow insights_client_t devlog_t:sock_file write;
allow insights_client_t firewalld_t:dbus send_msg;
allow insights_client_t insights_client_etc_t:file create;
allow insights_client_t ipp_port_t:tcp_socket name_connect;
allow insights_client_t krb5_keytab_t:file getattr;
allow insights_client_t lvm_control_t:chr_file { read write };
allow insights_client_t node_t:udp_socket node_bind;
allow insights_client_t random_device_t:chr_file read;
allow insights_client_t self:process setrlimit;
allow insights_client_t self:vsock_socket create;
allow insights_client_t semanage_store_t:file read;
#!!!! This avc can be allowed using the boolean 'domain_can_mmap_files'
allow insights_client_t syslogd_var_run_t:file map;
allow insights_client_t var_run_t:file { unlink write };
allow insights_client_t vsock_device_t:chr_file read;

Comment 32 errata-xmlrpc 2022-11-08 10:44:11 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (selinux-policy bug fix and enhancement update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2022:7691


Note You need to log in before you can comment on or make changes to this bug.