2018-11-07 20:57:48

by Petr Vorel

[permalink] [raw]
Subject: [PATCH 1/2] dnsmasq: Require log files to have .log suffix

Signed-off-by: Petr Vorel <[email protected]>
---
policy/modules/services/dnsmasq.fc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/policy/modules/services/dnsmasq.fc b/policy/modules/services/dnsmasq.fc
index 29d71c91..4c34df3c 100644
--- a/policy/modules/services/dnsmasq.fc
+++ b/policy/modules/services/dnsmasq.fc
@@ -13,7 +13,7 @@
/var/lib/misc/dnsmasq\.leases -- gen_context(system_u:object_r:dnsmasq_lease_t,s0)
/var/lib/dnsmasq(/.*)? gen_context(system_u:object_r:dnsmasq_lease_t,s0)

-/var/log/dnsmasq.* -- gen_context(system_u:object_r:dnsmasq_var_log_t,s0)
+/var/log/dnsmasq(.*)?\.log -- gen_context(system_u:object_r:dnsmasq_var_log_t,s0)

/run/dnsmasq.* -- gen_context(system_u:object_r:dnsmasq_var_run_t,s0)
/run/libvirt/network(/.*)? gen_context(system_u:object_r:dnsmasq_var_run_t,s0)
--
2.19.1



2018-11-07 20:57:49

by Petr Vorel

[permalink] [raw]
Subject: [PATCH 2/2] dnsmasq: Add support for lxc-net, lxd-bridge, NetworkManager

* lxc-net pid and lease files:
/var/run/lxc/dnsmasq.pid
/var/lib/misc/dnsmasq.*.leases

* lxd-bridge pid and lease files:
/var/run/lxd-bridge/dnsmasq.pid
/var/lib/lxd-bridge/dnsmasq.*.leases
/var/lib/lxd/networks/*/dnsmasq.leases
/var/lib/lxd/networks/*/dnsmasq.pid

* NetworkManager pid, lease and configuration files:
/var/lib/NetworkManager/dnsmasq-*.leases
/run/nm-dns-dnsmasq.conf
/run/nm-dnsmasq-*.pid
/run/sendsigs.omit.d/*dnsmasq.pid
/run/NetworkManager/dnsmasq.conf
/run/NetworkManager/dnsmasq.pid

Signed-off-by: Petr Vorel <[email protected]>
---
policy/modules/services/dnsmasq.fc | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/policy/modules/services/dnsmasq.fc b/policy/modules/services/dnsmasq.fc
index 4c34df3c..d1fb367e 100644
--- a/policy/modules/services/dnsmasq.fc
+++ b/policy/modules/services/dnsmasq.fc
@@ -1,5 +1,7 @@
/etc/dnsmasq\.conf -- gen_context(system_u:object_r:dnsmasq_etc_t,s0)
/etc/dnsmasq\.d(/.*)? gen_context(system_u:object_r:dnsmasq_etc_t,s0)
+/run/nm-dns-dnsmasq.conf gen_context(system_u:object_r:dnsmasq_etc_t,s0)
+/run/NetworkManager/dnsmasq.conf gen_context(system_u:object_r:dnsmasq_etc_t,s0)

/etc/rc\.d/init\.d/dnsmasq -- gen_context(system_u:object_r:dnsmasq_initrc_exec_t,s0)

@@ -10,10 +12,18 @@

/usr/sbin/dnsmasq -- gen_context(system_u:object_r:dnsmasq_exec_t,s0)

-/var/lib/misc/dnsmasq\.leases -- gen_context(system_u:object_r:dnsmasq_lease_t,s0)
+/var/lib/misc/dnsmasq(\..+)?\.leases -- gen_context(system_u:object_r:dnsmasq_lease_t,s0)
/var/lib/dnsmasq(/.*)? gen_context(system_u:object_r:dnsmasq_lease_t,s0)
+/var/lib/lxd-bridge/dnsmasq\..+\.leases -- gen_context(system_u:object_r:dnsmasq_lease_t,s0)
+/var/lib/lxd/networks/\.*/dnsmasq\.leases -- gen_context(system_u:object_r:dnsmasq_lease_t,s0)
+/var/lib/NetworkManager/dnsmasq-.*\.leases -- gen_context(system_u:object_r:dnsmasq_lease_t,s0)

/var/log/dnsmasq(.*)?\.log -- gen_context(system_u:object_r:dnsmasq_var_log_t,s0)

/run/dnsmasq.* -- gen_context(system_u:object_r:dnsmasq_var_run_t,s0)
/run/libvirt/network(/.*)? gen_context(system_u:object_r:dnsmasq_var_run_t,s0)
+/run/(lxc|lxd-bridge|NetworkManager)/dnsmasq.pid -- gen_context(system_u:object_r:dnsmasq_var_run_t,s0)
+/var/lib/lxd/networks/\.+/dnsmasq.pid -- gen_context(system_u:object_r:dnsmasq_var_run_t,s0)
+
+/run/nm-dnsmasq-.+.pid -- gen_context(system_u:object_r:dnsmasq_var_run_t,s0)
+/run/sendsigs\.omit\.d/.*dnsmasq.pid -- gen_context(system_u:object_r:dnsmasq_var_run_t,s0)
--
2.19.1


2018-11-10 00:43:11

by Chris PeBenito

[permalink] [raw]
Subject: Re: [PATCH 1/2] dnsmasq: Require log files to have .log suffix

On 11/07/2018 03:57 PM, Petr Vorel wrote:
> Signed-off-by: Petr Vorel <[email protected]>
> ---
> policy/modules/services/dnsmasq.fc | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/policy/modules/services/dnsmasq.fc b/policy/modules/services/dnsmasq.fc
> index 29d71c91..4c34df3c 100644
> --- a/policy/modules/services/dnsmasq.fc
> +++ b/policy/modules/services/dnsmasq.fc
> @@ -13,7 +13,7 @@
> /var/lib/misc/dnsmasq\.leases -- gen_context(system_u:object_r:dnsmasq_lease_t,s0)
> /var/lib/dnsmasq(/.*)? gen_context(system_u:object_r:dnsmasq_lease_t,s0)
>
> -/var/log/dnsmasq.* -- gen_context(system_u:object_r:dnsmasq_var_log_t,s0)
> +/var/log/dnsmasq(.*)?\.log -- gen_context(system_u:object_r:dnsmasq_var_log_t,s0)
>
> /run/dnsmasq.* -- gen_context(system_u:object_r:dnsmasq_var_run_t,s0)
> /run/libvirt/network(/.*)? gen_context(system_u:object_r:dnsmasq_var_run_t,s0)

This would exclude rotated logs, e.g. something like dnsmasq.log.1 or
dnsmasq.log.1.gz, which would be undesirable.

--
Chris PeBenito

2018-11-10 00:43:14

by Chris PeBenito

[permalink] [raw]
Subject: Re: [PATCH 2/2] dnsmasq: Add support for lxc-net, lxd-bridge, NetworkManager

On 11/07/2018 03:57 PM, Petr Vorel wrote:
> * lxc-net pid and lease files:
> /var/run/lxc/dnsmasq.pid
> /var/lib/misc/dnsmasq.*.leases
>
> * lxd-bridge pid and lease files:
> /var/run/lxd-bridge/dnsmasq.pid
> /var/lib/lxd-bridge/dnsmasq.*.leases
> /var/lib/lxd/networks/*/dnsmasq.leases
> /var/lib/lxd/networks/*/dnsmasq.pid
>
> * NetworkManager pid, lease and configuration files:
> /var/lib/NetworkManager/dnsmasq-*.leases
> /run/nm-dns-dnsmasq.conf
> /run/nm-dnsmasq-*.pid
> /run/sendsigs.omit.d/*dnsmasq.pid
> /run/NetworkManager/dnsmasq.conf
> /run/NetworkManager/dnsmasq.pid
>
> Signed-off-by: Petr Vorel <[email protected]>
> ---
> policy/modules/services/dnsmasq.fc | 12 +++++++++++-
> 1 file changed, 11 insertions(+), 1 deletion(-)
>
> diff --git a/policy/modules/services/dnsmasq.fc b/policy/modules/services/dnsmasq.fc
> index 4c34df3c..d1fb367e 100644
> --- a/policy/modules/services/dnsmasq.fc
> +++ b/policy/modules/services/dnsmasq.fc
> @@ -1,5 +1,7 @@
> /etc/dnsmasq\.conf -- gen_context(system_u:object_r:dnsmasq_etc_t,s0)
> /etc/dnsmasq\.d(/.*)? gen_context(system_u:object_r:dnsmasq_etc_t,s0)
> +/run/nm-dns-dnsmasq.conf gen_context(system_u:object_r:dnsmasq_etc_t,s0)
> +/run/NetworkManager/dnsmasq.conf gen_context(system_u:object_r:dnsmasq_etc_t,s0)

Unfortunately there already was some ordering problems in the file (I've
since fixed them). These should go with the other /run lines. Also
escape the \.conf.


> /etc/rc\.d/init\.d/dnsmasq -- gen_context(system_u:object_r:dnsmasq_initrc_exec_t,s0)
>
> @@ -10,10 +12,18 @@
>
> /usr/sbin/dnsmasq -- gen_context(system_u:object_r:dnsmasq_exec_t,s0)
>
> -/var/lib/misc/dnsmasq\.leases -- gen_context(system_u:object_r:dnsmasq_lease_t,s0)
> +/var/lib/misc/dnsmasq(\..+)?\.leases -- gen_context(system_u:object_r:dnsmasq_lease_t,s0)
> /var/lib/dnsmasq(/.*)? gen_context(system_u:object_r:dnsmasq_lease_t,s0)
> +/var/lib/lxd-bridge/dnsmasq\..+\.leases -- gen_context(system_u:object_r:dnsmasq_lease_t,s0)
> +/var/lib/lxd/networks/\.*/dnsmasq\.leases -- gen_context(system_u:object_r:dnsmasq_lease_t,s0)
> +/var/lib/NetworkManager/dnsmasq-.*\.leases -- gen_context(system_u:object_r:dnsmasq_lease_t,s0)
>
> /var/log/dnsmasq(.*)?\.log -- gen_context(system_u:object_r:dnsmasq_var_log_t,s0)
>
> /run/dnsmasq.* -- gen_context(system_u:object_r:dnsmasq_var_run_t,s0)
> /run/libvirt/network(/.*)? gen_context(system_u:object_r:dnsmasq_var_run_t,s0)
> +/run/(lxc|lxd-bridge|NetworkManager)/dnsmasq.pid -- gen_context(system_u:object_r:dnsmasq_var_run_t,s0)
> +/var/lib/lxd/networks/\.+/dnsmasq.pid -- gen_context(system_u:object_r:dnsmasq_var_run_t,s0)
> +
> +/run/nm-dnsmasq-.+.pid -- gen_context(system_u:object_r:dnsmasq_var_run_t,s0)
> +/run/sendsigs\.omit\.d/.*dnsmasq.pid -- gen_context(system_u:object_r:dnsmasq_var_run_t,s0)

Same thing here with the line placement.



--
Chris PeBenito

2018-11-12 06:55:07

by Petr Vorel

[permalink] [raw]
Subject: Re: [PATCH 1/2] dnsmasq: Require log files to have .log suffix

Hi Chris,

...
> > +++ b/policy/modules/services/dnsmasq.fc
> > @@ -13,7 +13,7 @@
> > /var/lib/misc/dnsmasq\.leases -- gen_context(system_u:object_r:dnsmasq_lease_t,s0)
> > /var/lib/dnsmasq(/.*)? gen_context(system_u:object_r:dnsmasq_lease_t,s0)
> > -/var/log/dnsmasq.* -- gen_context(system_u:object_r:dnsmasq_var_log_t,s0)
> > +/var/log/dnsmasq(.*)?\.log -- gen_context(system_u:object_r:dnsmasq_var_log_t,s0)
> > /run/dnsmasq.* -- gen_context(system_u:object_r:dnsmasq_var_run_t,s0)
> > /run/libvirt/network(/.*)? gen_context(system_u:object_r:dnsmasq_var_run_t,s0)

> This would exclude rotated logs, e.g. something like dnsmasq.log.1 or
> dnsmasq.log.1.gz, which would be undesirable.

I didn't know dnsmasq need to open logs already handled by logrotate (I thought
logrotate creates these).
But I see apache has similar pattern.

I added the patern in v2:
/var/log/dnsmasq(.*)?\.log(\..+)

Kind regards,
Petr