Package: bind9
Version: 1:9.16.11-2~bpo10+1
Quack,
I got these errors at startup:
Mar 26 08:51:46 Orfeo named[14057]: couldn't mkdir '/run/named':
Permission denied
Mar 26 08:51:46 Orfeo named[14057]: generating session key for dynamic
DNS
Mar 26 08:51:46 Orfeo named[14057]: couldn't mkdir '/run/named':
Permission denied
Mar 26 08:51:46 Orfeo named[14057]: could not create
/run/named/session.key
Mar 26 08:51:46 Orfeo named[14057]: failed to generate session key for
dynamic DNS: permission denied
and apparmor is unhappy:
type=AVC msg=audit(1616745106.778:13945868): apparmor="DENIED"
operation="mkdir" profile="named" name="/run/named/" pid=14057
comm="isc-worker0000" requested_mask="c" denied_mask="c" fsuid=102
ouid=102
type=AVC msg=audit(1616745106.778:13945869): apparmor="DENIED"
operation="mkdir" profile="named" name="/run/named/" pid=14057
comm="isc-worker0000" requested_mask="c" denied_mask="c" fsuid=102
ouid=102
Creating the directory _after_ changing user is clearly a problem that
should be fixed in Bind, so changing the apparmor profile would not
help.
I added this in the service file:
ExecStartPre=/bin/mkdir -p /run/named
ExecStartPre=/bin/chown bind: /run/named
and it works now:
# ls -la /run/named/
total 8
drwxr-xr-x 2 bind bind 80 Mar 26 09:06 .
drwxr-xr-x 40 root root 1300 Mar 26 09:06 ..
-rw-r--r-- 1 bind bind 6 Mar 26 09:06 named.pid
-rw------- 1 bind bind 102 Mar 26 09:06 session.key
but of course the directory is not cleaned when the service stops.
I think the best would be to reconsider this PR at least partially and
run the service directly as `bind` user:
https://salsa.debian.org/dns-team/bind9/-/merge_requests/1
I would suggest using `RuntimeDirectory` to create/cleanup the directory
automagically.
Regards.
\_o<
--
Marc Dequènes