Bug 922732

Summary: SELinux prevents openvpn_t to write inside the /var/lib/openvpn directory
Product: Red Hat Enterprise Linux 6 Reporter: Michal Bruncko <michal.bruncko>
Component: selinux-policyAssignee: Miroslav Grepl <mgrepl>
Status: CLOSED ERRATA QA Contact: Michal Trunecka <mtruneck>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 6.4CC: dwalsh, ebenes, mmalik, mtruneck, redhatbugzilla
Target Milestone: rc   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: selinux-policy-3.7.19-210.el6 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-11-21 10:20:35 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: 922786    
Bug Blocks: 985435    

Description Michal Bruncko 2013-03-18 11:45:14 UTC
Description of problem:
I am getting following AVC's:
type=AVC msg=audit(1363303699.629:5): avc:  denied  { read write } for  pid=1394 comm="openvpn" name="ip_persist.dat" dev=dm-5 ino=146 scontext=system_u:system_r:openvpn_t:s0 tcontext=unconfined_u:object_r:var_lib_t:s0 tclass=file

Several points about this:
- yes, directory /var/lib/openvpn is not standard openvpn distrp package directory (is not included within openvpn rpm)
- but this directory makes only sense for me for storing data to which openvpn daemon should be able to both read and write.

In current situation there is no directory suited for storing permanent varied data - i.e. persistent IP pools for OpenVPN clients (openvpn parameter "ifconfig-pool-persist"), user-specific configurations (openvpn parameter "client-config-dir"). Same situation can be aplied once you want to run openvpn in chrooted environment (openvpn parameter "chroot") - it should be pointed to directory with all necessary variable content (IP pools,...). Directory /var/run/openvpn is just not good point for those purposes.

Version-Release number of selected component (if applicable):
openvpn-2.2.2-1.el6.x86_64
selinux-policy-targeted-3.7.19-195.el6_4.3.noarch

Additional notes:
- this bug can be treaded as continuing from Bug #469284.
- look on comment #4: https://bugzilla.redhat.com/show_bug.cgi?id=469284#c4 from David - here is exact recommendation to which I wanted to focus here. We are missing openvpn directory for permanent OpenVPN data.

thanks

Comment 1 Miroslav Grepl 2013-03-18 12:50:29 UTC
It looks more as openvpn bug for now. We have the following labeling


/etc/openvpn(/.*)?              gen_context(system_u:object_r:openvpn_etc_t,s0)
/etc/openvpn/ipp.txt    --      gen_context(system_u:object_r:openvpn_etc_rw_t,s0)
/etc/rc\.d/init\.d/openvpn --   gen_context(system_u:object_r:openvpn_initrc_exec_t,s0)
/usr/sbin/openvpn       --      gen_context(system_u:object_r:openvpn_exec_t,s0)
/var/log/openvpn.*              gen_context(system_u:object_r:openvpn_var_log_t,s0)
/var/run/openvpn(/.*)?          gen_context(system_u:object_r:openvpn_var_run_t,s0)

So if a new dir is needed then it needs to be added to RPM payload and we will need to add labeling.

Comment 2 Michal Bruncko 2013-03-18 12:56:33 UTC
Hi Miroslav,
Should I open a new bugreport for addressing missing directory for openvpn component?
Thanks

Comment 3 Michal Bruncko 2013-03-18 14:19:45 UTC
I've raised #922786 for openvpn component.

Comment 4 Miroslav Grepl 2013-03-19 11:47:41 UTC
Ok.

Comment 5 Miroslav Grepl 2013-07-17 13:30:58 UTC
I added support for

/var/lib/openvpn

Comment 6 Miroslav Grepl 2013-08-06 20:40:06 UTC
*** Bug 789342 has been marked as a duplicate of this bug. ***

Comment 9 errata-xmlrpc 2013-11-21 10:20:35 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-2013-1598.html