Bug 1376893
Summary: | the puppetmaster service does not start because of SELinux | ||
---|---|---|---|
Product: | Red Hat Enterprise Linux 7 | Reporter: | Milos Malik <mmalik> |
Component: | selinux-policy | Assignee: | Lukas Vrabec <lvrabec> |
Status: | CLOSED ERRATA | QA Contact: | Milos Malik <mmalik> |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | 7.3 | CC: | lmiksik, lvrabec, madko, mgrepl, mmalik, plautrba, pvrabec, rom, ssekidde, tim |
Target Milestone: | rc | Keywords: | Reopened |
Target Release: | --- | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | selinux-policy-3.13.1-187.el7 | Doc Type: | If docs needed, set a value |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2018-04-10 12:24:04 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: | |||
Bug Depends On: | |||
Bug Blocks: | 1393066 |
Description
Milos Malik
2016-09-16 18:55:10 UTC
Actual results (permissive mode): ---- type=PATH msg=audit(09/16/2016 15:00:32.020:345) : item=2 name=/lib64/ld-linux-x86-64.so.2 inode=3575 dev=fd:01 mode=file,755 ouid=root ogid=root rdev=00:00 obj=system_u:object_r:ld_so_t:s0 objtype=NORMAL type=PATH msg=audit(09/16/2016 15:00:32.020:345) : item=1 name=/usr/bin/ruby inode=20103 dev=fd:01 mode=file,755 ouid=root ogid=root rdev=00:00 obj=system_u:object_r:bin_t:s0 objtype=NORMAL type=PATH msg=audit(09/16/2016 15:00:32.020:345) : item=0 name=/usr/bin/puppet inode=20230 dev=fd:01 mode=file,755 ouid=root ogid=root rdev=00:00 obj=system_u:object_r:puppetagent_exec_t:s0 objtype=NORMAL type=CWD msg=audit(09/16/2016 15:00:32.020:345) : cwd=/ type=EXECVE msg=audit(09/16/2016 15:00:32.020:345) : argc=4 a0=/usr/bin/ruby a1=/usr/bin/puppet a2=master a3=--no-daemonize type=SYSCALL msg=audit(09/16/2016 15:00:32.020:345) : arch=x86_64 syscall=execve success=yes exit=0 a0=0x14880b0 a1=0x1486ff0 a2=0x1486b00 a3=0x7ffc74892700 items=3 ppid=1629 pid=1630 auid=unset uid=root gid=root euid=root suid=root fsuid=root egid=root sgid=root fsgid=root tty=(none) ses=unset comm=puppet exe=/usr/bin/ruby subj=system_u:system_r:puppetmaster_t:s0 key=(null) type=AVC msg=audit(09/16/2016 15:00:32.020:345) : avc: denied { execute_no_trans } for pid=1630 comm=start-puppet-ma path=/usr/bin/puppet dev="dm-1" ino=20230 scontext=system_u:system_r:puppetmaster_t:s0 tcontext=system_u:object_r:puppetagent_exec_t:s0 tclass=file type=AVC msg=audit(09/16/2016 15:00:32.020:345) : avc: denied { read open } for pid=1630 comm=start-puppet-ma path=/usr/bin/puppet dev="dm-1" ino=20230 scontext=system_u:system_r:puppetmaster_t:s0 tcontext=system_u:object_r:puppetagent_exec_t:s0 tclass=file type=AVC msg=audit(09/16/2016 15:00:32.020:345) : avc: denied { execute } for pid=1630 comm=start-puppet-ma name=puppet dev="dm-1" ino=20230 scontext=system_u:system_r:puppetmaster_t:s0 tcontext=system_u:object_r:puppetagent_exec_t:s0 tclass=file ---- type=SYSCALL msg=audit(09/16/2016 15:00:32.041:346) : arch=x86_64 syscall=fstat success=yes exit=0 a0=0x7 a1=0x7fff78865fc0 a2=0x7fff78865fc0 a3=0x7f04d375ed66 items=0 ppid=1629 pid=1630 auid=unset uid=root gid=root euid=root suid=root fsuid=root egid=root sgid=root fsgid=root tty=(none) ses=unset comm=puppet exe=/usr/bin/ruby subj=system_u:system_r:puppetmaster_t:s0 key=(null) type=AVC msg=audit(09/16/2016 15:00:32.041:346) : avc: denied { getattr } for pid=1630 comm=puppet path=/usr/bin/puppet dev="dm-1" ino=20230 scontext=system_u:system_r:puppetmaster_t:s0 tcontext=system_u:object_r:puppetagent_exec_t:s0 tclass=file ---- type=SYSCALL msg=audit(09/16/2016 15:00:32.041:347) : arch=x86_64 syscall=ioctl success=no exit=ENOTTY(Inappropriate ioctl for device) a0=0x7 a1=TCGETS a2=0x7fff78865fa0 a3=0xe items=0 ppid=1629 pid=1630 auid=unset uid=root gid=root euid=root suid=root fsuid=root egid=root sgid=root fsgid=root tty=(none) ses=unset comm=puppet exe=/usr/bin/ruby subj=system_u:system_r:puppetmaster_t:s0 key=(null) type=AVC msg=audit(09/16/2016 15:00:32.041:347) : avc: denied { ioctl } for pid=1630 comm=puppet path=/usr/bin/puppet dev="dm-1" ino=20230 scontext=system_u:system_r:puppetmaster_t:s0 tcontext=system_u:object_r:puppetagent_exec_t:s0 tclass=file ---- *** Bug 1410199 has been marked as a duplicate of this bug. *** Any news on this bug ? This also happens on Fedora 25. Should I file a separate bug for that? Yes, please. (I have filed bug #1418902 for the same/a similar issue on Fedora 25.) This had been doing my nut for a while! So I thought I would share. I am using centos 7 but should work for other distros, I had to disable selinux - load puppetmaster - enable selinux just to get it to run. My fix as a root user and selinux enabled was the following. #Create some recent audit logs systemctl start puppetmaster #Check the audit logs ausearch -m avc -ts recent ########LOG######### (One of many denied errors which included exec and getattr) type=SYSCALL msg=audit(1490787585.076:4811): arch=c000003e syscall=4 success=no exit=-13 a0=1e0b090 a1=7ffc16cc73f0 a2=7ffc16cc73f0 a3=7ffc16cc7190 items=0 ppid=11712 pid=11713 auid=4294967295 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=4294967295 comm="start-puppet-ma" exe="/usr/bin/bash" subj=system_u:system_r:puppetmaster_t:s0 key=(null) type=AVC msg=audit(1490787585.076:4811): avc: denied { getattr } for pid=11713 comm="start-puppet-ma" path="/usr/bin/puppet" dev="dm-0" ino=1733641 scontext=system_u:system_r:puppetmaster_t:s0 tcontext=system_u:object_r:puppetagent_exec_t:s0 tclass=file #################### #check the selinux context information on the file it's failing on. ls -Z /usr/bin/start-puppet-ma* #output was. -rwxr-xr-x. root root system_u:object_r:puppetmaster_exec_t:s0 /usr/bin/start-puppet-master The service is trying to run as subj=system_u:system_r:puppetmaster_t:s0, the file has the same selinux user but it doesn't have the same role or type for the service to start. so a quick fix was to change the file contexts to match what the service needed to run. #Disable selinux to make changes. setenforce 0 #Set the role chcon -r system_r start-puppet-master #Set the type chcon -t puppetmaster_t start-puppet-master #Enable selinux setenforce 1 #Start/Restart the service systemctl start puppetmaster Hope this helps. We're going to close this bug as WONTFIX because * of limited capacity of selinux-policy developers * the bug is related to EPEL component or 3rd party SW only * the bug appears in unsupported configuration We believe this bug can be fixed via a local policy module. For more information please see: * https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/selinux_users_and_administrators_guide/sect-security-enhanced_linux-troubleshooting-fixing_problems#sect-Security-Enhanced_Linux-Fixing_Problems-Allowing_Access_audit2allow If you disagree, please re-open the bug. We're going to close this bug as WONTFIX because * of limited capacity of selinux-policy developers * the bug is related to EPEL component or 3rd party SW only * the bug appears in unsupported configuration We believe this bug can be fixed via a local policy module. For more information please see: * https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/selinux_users_and_administrators_guide/sect-security-enhanced_linux-troubleshooting-fixing_problems#sect-Security-Enhanced_Linux-Fixing_Problems-Allowing_Access_audit2allow If you disagree, please re-open the bug. Re-opening the bug because: * SELinux should not prevent the puppetmaster service from running in default configuration * puppet is part of various layered products sold to our customers * puppet is used internally by various teams 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, 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-2018:0763 |