Bug 1000301 - SELinux is preventing /usr/bin/python2.7 from 'write' accesses on the file /etc/yum.repos.d/redhat.repo.
SELinux is preventing /usr/bin/python2.7 from 'write' accesses on the file /e...
Status: CLOSED DUPLICATE of bug 822402
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: subscription-manager (Show other bugs)
7.0
x86_64 Linux
unspecified Severity unspecified
: rc
: ---
Assigned To: candlepin-bugs
John Sefler
abrt_hash:f0142a708f65c1b182171fc5762...
:
: 1017010 (view as bug list)
Depends On:
Blocks: rhsm-rhel70
  Show dependency treegraph
 
Reported: 2013-08-23 02:54 EDT by Gerd Hoffmann
Modified: 2014-07-22 10:06 EDT (History)
6 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2013-11-05 15:44:27 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Gerd Hoffmann 2013-08-23 02:54:46 EDT
Description of problem:
SELinux is preventing /usr/bin/python2.7 from 'write' accesses on the file /etc/yum.repos.d/redhat.repo.

*****  Plugin catchall_labels (83.8 confidence) suggests   *******************

If you want to allow python2.7 to have write access on the redhat.repo file
Then you need to change the label on /etc/yum.repos.d/redhat.repo
Do
# semanage fcontext -a -t FILE_TYPE '/etc/yum.repos.d/redhat.repo'
where FILE_TYPE is one of the following: afs_cache_t, initrc_tmp_t, puppet_tmp_t, rhsmcertd_lock_t, rhsmcertd_var_lib_t, rhsmcertd_var_run_t, user_cron_spool_t, var_lock_t. 
Then execute: 
restorecon -v '/etc/yum.repos.d/redhat.repo'


*****  Plugin catchall (17.1 confidence) suggests   **************************

If you believe that python2.7 should be allowed write access on the redhat.repo file 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:
# grep rhsmcertd-worke /var/log/audit/audit.log | audit2allow -M mypol
# semodule -i mypol.pp

Additional Information:
Source Context                system_u:system_r:rhsmcertd_t:s0
Target Context                system_u:object_r:etc_t:s0
Target Objects                /etc/yum.repos.d/redhat.repo [ file ]
Source                        rhsmcertd-worke
Source Path                   /usr/bin/python2.7
Port                          <Unknown>
Host                          (removed)
Source RPM Packages           python-2.7.5-5.el7.x86_64
Target RPM Packages           subscription-manager-1.8.13-1.el7.x86_64
Policy RPM                    selinux-policy-3.12.1-70.el7.noarch
Selinux Enabled               True
Policy Type                   targeted
Enforcing Mode                Enforcing
Host Name                     (removed)
Platform                      Linux (removed) 3.10.0-10.el7.x86_64 #1 SMP Tue
                              Aug 20 16:54:38 EDT 2013 x86_64 x86_64
Alert Count                   10
First Seen                    2013-08-21 22:12:56 CEST
Last Seen                     2013-08-23 08:47:58 CEST
Local ID                      fb1d576d-97f5-429b-86cc-26ce47c1f959

Raw Audit Messages
type=AVC msg=audit(1377240478.712:706): avc:  denied  { write } for  pid=3047 comm="rhsmcertd-worke" name="redhat.repo" dev="dm-0" ino=1706189 scontext=system_u:system_r:rhsmcertd_t:s0 tcontext=system_u:object_r:etc_t:s0 tclass=file


type=SYSCALL msg=audit(1377240478.712:706): arch=x86_64 syscall=open success=no exit=EACCES a0=de46c0 a1=241 a2=1b6 a3=0 items=0 ppid=787 pid=3047 auid=4294967295 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=4294967295 comm=rhsmcertd-worke exe=/usr/bin/python2.7 subj=system_u:system_r:rhsmcertd_t:s0 key=(null)

Hash: rhsmcertd-worke,rhsmcertd_t,etc_t,file,write

Additional info:
reporter:       libreport-2.1.6
hashmarkername: setroubleshoot
kernel:         3.10.0-10.el7.x86_64
type:           libreport
Comment 2 Miroslav Grepl 2013-10-16 18:09:03 EDT
So rhsmcertd-worker can write anything in /etc/yum.repos.d/ dir, right?
Comment 3 Devan Goodwin 2013-10-30 10:49:25 EDT
(In reply to Miroslav Grepl from comment #2)
> So rhsmcertd-worker can write anything in /etc/yum.repos.d/ dir, right?

No we just write to the one specific redhat.repo file, but it would seem acceptable to be able to write anything there if that helps things along.
Comment 4 Carter Kozak 2013-10-30 10:55:00 EDT
It also needs access to some directories in /etc/pki, which appears to be missing in rhel7



We need access to /etc/pki/consumer and /etc/pki/entitlement, as well as redhat.repo

Here are my 2 denials.

type=AVC msg=audit(1383144333.585:538): avc:  denied  { write } for  pid=2692 comm="rhsmcertd-worke" name="redhat.repo" dev="dm-0" ino=37559621 scontext=system_u:system_r:rhsmcertd_t:s0 tcontext=unconfined_u:object_r:etc_t:s0 tclass=file
type=SYSCALL msg=audit(1383144333.585:538): arch=c000003e syscall=2 success=no exit=-13 a0=2726d50 a1=241 a2=1b6 a3=fffffff0 items=0 ppid=1333 pid=2692 auid=4294967295 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=4294967295 comm="rhsmcertd-worke" exe="/usr/bin/python2.7" subj=system_u:system_r:rhsmcertd_t:s0 key=(null)
type=AVC msg=audit(1383144334.075:539): avc:  denied  { write } for  pid=2713 comm="rhsmcertd-worke" name="entitlement" dev="dm-0" ino=1422984 scontext=system_u:system_r:rhsmcertd_t:s0 tcontext=unconfined_u:object_r:cert_t:s0 tclass=dir
type=SYSCALL msg=audit(1383144334.075:539): arch=c000003e syscall=2 success=no exit=-13 a0=20801f0 a1=241 a2=1b6 a3=0 items=0 ppid=1333 pid=2713 auid=4294967295 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=4294967295 comm="rhsmcertd-worke" exe="/usr/bin/python2.7" subj=system_u:system_r:rhsmcertd_t:s0 key=(null)
Comment 5 Carter Kozak 2013-10-30 10:59:49 EDT
*** Bug 1017010 has been marked as a duplicate of this bug. ***
Comment 6 Miroslav Grepl 2013-11-05 15:44:27 EST

*** This bug has been marked as a duplicate of bug 822402 ***

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