Bug 728790

Summary: fence_kdump agent bind to port causes AVC denial
Product: Red Hat Enterprise Linux 6 Reporter: Ryan O'Hara <rohara>
Component: selinux-policyAssignee: Miroslav Grepl <mgrepl>
Status: CLOSED ERRATA QA Contact: Milos Malik <mmalik>
Severity: high Docs Contact:
Priority: high    
Version: 6.2CC: dwalsh, mmalik, rohara
Target Milestone: rc   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: selinux-policy-3.7.19-107.el6 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-12-06 10:10:27 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Ryan O'Hara 2011-08-07 15:08:53 UTC
The new fence_kdump agent fails due to AVC denial when it attempts to bind to a port. The default port is 7410.

type=AVC msg=audit(1312729018.129:34951): avc:  denied  { name_bind } for  pid=11504 comm="fence_kdump" src=7410 scontext=unconfined_u:system_r:fenced_t:s0 tcontext=system_u:object_r:port_t:s0 tclass=udp_socket
type=SYSCALL msg=audit(1312729018.129:34951): arch=c000003e syscall=49 success=no exit=-13 a0=4 a1=151fcb0 a2=10 a3=7fff22727360 items=0 ppid=10971 pid=11504 auid=0 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=2 comm="fence_kdump" exe="/usr/sbin/fence_kdump" subj=unconfined_u:system_r:fenced_t:s0 key=(null)

This only happens when the agent is exec'd from fenced, as would be the case in an operational cluster. Running fence_kdump by hand results in no AVC denials.

Comment 1 Ryan O'Hara 2011-08-07 15:10:35 UTC
The fence_kdump agent is in fence-agents-3.1.5-5.el6 and later.

Comment 3 Miroslav Grepl 2011-08-08 06:19:26 UTC
We need a new type for this port and allow fence_kdump to bind on this port.

Comment 4 Miroslav Grepl 2011-08-08 12:16:34 UTC
Ryan,
could you alse switch to permissive mode or make fenced_t as permissive domain

# semanage permissive -a fenced_t

and you will see, if you get more AVC msgs.

Comment 5 Ryan O'Hara 2011-08-08 14:32:54 UTC
(In reply to comment #4)
> Ryan,
> could you alse switch to permissive mode or make fenced_t as permissive domain
> 
> # semanage permissive -a fenced_t
> 
> and you will see, if you get more AVC msgs.

Sure.

type=MAC_STATUS msg=audit(1312813623.582:35948): enforcing=0 old_enforcing=1 auid=0 ses=2
type=SYSCALL msg=audit(1312813623.582:35948): arch=c000003e syscall=1 success=yes exit=1 a0=3 a1=7fff4136bcf0 a2=1 a3=fffffff8 items=0 ppid=4198 pid=12923 auid=0 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=pts0 ses=2 comm="setenforce" exe="/usr/sbin/setenforce" subj=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 key=(null)
type=AVC msg=audit(1312813680.745:35949): avc:  denied  { name_bind } for  pid=12943 comm="fence_kdump" src=7410 scontext=unconfined_u:system_r:fenced_t:s0 tcontext=system_u:object_r:port_t:s0 tclass=udp_socket
type=SYSCALL msg=audit(1312813680.745:35949): arch=c000003e syscall=49 success=yes exit=0 a0=4 a1=bebcb0 a2=10 a3=40 items=0 ppid=10971 pid=12943 auid=0 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=2 comm="fence_kdump" exe="/usr/sbin/fence_kdump" subj=unconfined_u:system_r:fenced_t:s0 key=(null)

Looks like the name_bind is the only AVC.

Comment 6 Miroslav Grepl 2011-08-10 07:09:21 UTC
Fixed in selinux-policy-3.7.19-107.el6

Comment 13 errata-xmlrpc 2011-12-06 10:10:27 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, and where to find the updated
files, follow the link below.

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

http://rhn.redhat.com/errata/RHBA-2011-1511.html