Red Hat Bugzilla – Bug 922732
SELinux prevents openvpn_t to write inside the /var/lib/openvpn directory
Last modified: 2014-09-30 19:34:27 EDT
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
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.
Hi Miroslav, Should I open a new bugreport for addressing missing directory for openvpn component? Thanks
I've raised #922786 for openvpn component.
Ok.
I added support for /var/lib/openvpn
*** Bug 789342 has been marked as a duplicate of this bug. ***
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