snbhsmt_log

ネットワークとコンピュータ、その他いろいろ

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

chroot した bind の syslog 出力を SELinux で許可

syslogd のオプションに -a /var/named/chroot/dev/log を追加したら /var/log/message に以下のログが出たので、audit2allow を用いて SELinux のポリシーを変更する。

Jul 23 00:20:56 delany kernel: audit(1153581656.851:2): avc:  denied  { search }
 for  pid=3201 comm="syslogd" name="named" dev=hda5 ino=676501 scontext=root:sys
tem_r:syslogd_t tcontext=system_u:object_r:named_zone_t tclass=dir

OS は CentOS 4.3 。 targeted ポリシーなので selinux-policy-targeted-sources パッケージをインストールしておく。

まず、permissive モードにする。

# setenforce permissive
syslogd を起動、停止する。 この操作で SELinux のポリシーに引っかかってエラーログが出ているはず。
# /sbin/service syslog start
# /sbin/service syslog stop
enforcing モードに戻す。
# setenforce enforcing
以下のように実行すると直近の permissive モードにして以降のエラーログから このエラーが出なくなるための設定を出力してくれる。
# audit2allow -d -l
allow syslogd_t named_conf_t:dir { add_name remove_name search write };
allow syslogd_t named_conf_t:sock_file { create setattr unlink };
allow syslogd_t named_zone_t:dir search;
出力された設定内容を syslogd.te ファイルの末尾に追記する。
# cd /etc/selinux/targeted/src/policy/domains/program
# vi syslogd.te
ポリシーをアップデートする。
# cd /etc/selinux/targeted/src/policy
# make reload
これで以下の様に syslogd が UNIX ドメイン・ソケットを作成する事が出来る様になった。
# ls -Z /var/named/chroot/dev/log
srw-rw-rw-  root     root     user_u:object_r:named_conf_t     log
とか書いてるが、SELinux についてまったくの勉強不足で、 audit2allow が出力した設定の意味をあまり理解していない。 これだと syslogd が bind の設定ファイルをいじれる事にしてるんじゃないだろうか。

スポンサーサイト

« Dovecot の login_dir の値を変更|Top|Samba 用に iptables を設定 »

コメント

コメントの投稿

管理者にだけ表示を許可する

トラックバック

http://snbhsmt.blog110.fc2.com/tb.php/39-2f3442e9

Top

HOME

Author:snbhsmt
Google Profiles

http://www.ksky.ne.jp/~snbhsmt/

全ての記事を表示する

この人とブロともになる

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。