0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

DNS Slave で Master から取得したファイルを書き込めずエラーになっていたのを解決した

Posted at

問題の発覚

DNS Slave として動作していたが、syslog を見るとエラーが出ていた

Jun 16 12:52:23 XXXX named[19280]: dumping master file: /etc/bind/slaves/tmp-4FQYi7Y1cp: open: permission denied
Jun 16 12:52:23 XXXX kernel: [610023.609770] audit: type=1400 audit(1655351543.314:837): apparmor="DENIED" operation="mknod" profile="/usr/sbin/named" name="/etc/bind/slaves/tmp-4FQYi7Y1cp" pid=19280 comm="isc-worker0000" requested_mask="c" denied_mask="c" fsuid=103 ouid=103

確かに必要なファイルが転送されていない

$ ls -l /etc/bind/slaves
合計 40
-rw-r--r-- 1 bind bind 18190  6月 16 09:53 5.168.192.in-addr.arpa
(略)

※当方の環境ではほかに 1.168.192.in-addr.arpa と 10.168.192.in-addr.arpa が転送されていなければならない

環境

OS

Ubuntu 18.04LTS Server(14.04LTS から 16.04LTS を経てアップグレードしている)

named

$ /usr/sbin/named -v
BIND 9.11.3-1ubuntu1.17-Ubuntu (Extended Support Version) <id:a375815>

解決

ググると AppArmor の設定で named がファイルを書き込むディレクトリの制限を緩和すると出てくる。

$ cat /etc/apparmor.d/usr.sbin.named
(略)
/usr/sbin/named {
(略)
  /etc/bind/slaves/** rw,
(略)
}

すでに読み書きは許可されているように見える。

実はロックに対しても緩和する必要があった。すでにあるファイルに対しては読み書きはできていたようだが、新規にファイルを生成するときにエラーになっていた模様。

$ diff /etc/apparmor.d/usr.sbin.named{.bak,}
20c20
<   /etc/bind/slaves/** rw,
---
>   /etc/bind/slaves/** rwk,

AppArmor をリロードして書き換えた設定を有効にする

$ sudo systemctl reload apparmor

しばらくして /etc/bind/slaves を確認すると、想定していたファイルが書き込まれていた🎉

$ ls -l /etc/bind/slaves/
合計 104
-rw-r--r-- 1 bind bind 17849  6月 16 14:30 1.168.192.in-addr.arpa
-rw-r--r-- 1 bind bind 18394  6月 16 14:34 10.168.192.in-addr.arpa
-rw-r--r-- 1 bind bind 18190  6月 16 11:57 5.168.192.in-addr.arpa
(略)

syslog のエラーも消えた🎊

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?