lost and found ( for me ? )

Ubuntu server: AppArmor

Ubuntu server : AppArmor

root@arizona:~# cat /etc/lsb-release | grep -i desc
DISTRIB_DESCRIPTION="Ubuntu 10.04 LTS"

デフォルトで AppArmor が動いているみたい。

http://www.ubuntu.com/products/whatisubuntu/serveredition/features/apparmor

AppArmor とは ?

http://ja.opensuse.org/AppArmor

named.conf の directory を /var/named ( ubuntu の bind パッケージだと /var/cache/bind ) に変えたら、
下記のエラーがでて起動しなかったので、なんだろうと思ったら、AppArmor が原因だったみたい。

May 22 15:40:41 arizona kernel: [ 8077.028917] type=1503 audit(1274510441.827:20):  operation="open" pid=5520 parent=5517 profile="/usr/sbin/named" requested_mask="r::" denied_mask="r::" fsuid=0 ouid=0 name="/etc/named.conf"

対処としては2つ。

1. AppArmor を止める

root@arizona:~# /etc/init.d/apparmor stop
 * Unloading AppArmor profiles                                           [ OK ]

AppArmor が起動しないようにするには:

root@arizona:~# sysv-rc-conf apparomor off
root@arizona:~#

2. AppArmor の ルールを変更する

アプリごとのルールは /etc/apparmor.d/ にある。

root@arizona:/etc/apparmor.d# ls
abstractions       libvirt          usr.lib.libvirt.virt-aa-helper
cache              sbin.dhclient3   usr.sbin.cupsd
disable            tunables         usr.sbin.libvirtd
force-complain     usr.bin.evince   usr.sbin.named
gdm-guest-session  usr.bin.firefox  usr.sbin.tcpdump

下記追加。

root@arizona:/etc/apparmor.d# egrep "/var/named" usr.sbin.named
  /var/named/** rw,
  /var/named/ rw,


root@arizona:/etc/apparmor.d# /etc/init.d/apparmor restart

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.