AppArmorの話

2,066 views

Published on

Ubuntuオフラインミーティング13.05の会場で調べた AppArmor の話。違うかも。

Published in: Technology

AppArmorの話

  1. 1. (さっさ調べた) AppArmorの話
  2. 2. AppArmor の話 • パスベースの強制アクセス制御機能 • Linux Kernel に組み込み済み • LSMを利用 • Enforcing モード と Complain モード • Enforcing: 強制アクセス制御を行う • Complain: 学習モード(Permissive みたいなやつ) • Profile を定義していないものは管理対象外
  3. 3. AppArmor と SELinux • AppArmor は パスベース の MAC • usr.sbin.named • /var/log/named/** rw, • /var/log/named/ rw, • SELinux は ラベルベース の MAC • allow httpd_t httpd_sys_content_t : file { ioctl read getattr lock open } ; • httpd が /var/www/html 以下のコンテンツを表示するみたいな 感じ
  4. 4. AppArmor 状態 • apparmor_status or aa-status • ps –eZ するとラベル?が見える • Undefined は管理対象外 • 設定ファイル: /etc/apparmor.d/*
  5. 5. よくある問題 • bind slave の zone ファイルが作成されない • bind のログディレクトリ変えたらログが書け ない • 設定ファイルに書いて解決するか • コマンドで何とかする • 簡単!
  6. 6. おかしいな?と思ったら • grep DENIED /var/log/syslog May 25 15:00:02 raring kernel: [ 2801.891254] type=1400 audit(1369461602.892:80): apparmor="DENIED" operation="open" parent=1 profile="/usr/sbin/mysqld" name="/etc/mysql/my.cnf" pid=2798 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=0 ouid=0
  7. 7. よく使うコマンド • apparmor_status • apparmor_parser • aa-* • aa-* 系は apparmor-utils が必要
  8. 8. 無効化方法 • sudo invoke-rc.d apparmor stop • sudo update-rc.d -f apparmor remove • sudo shutdown –r 0 • でいけるらしい! • Profile 毎に無効化することも可能
  9. 9. 有効化方法 • sudo invoke-rc.d apparmor start • sudo update-rc.d apparmor start 37 S .
  10. 10. 参考URL • http://help.ubuntu.com/community/AppArmor

×