Upload
hiroki-ishikawa
View
1.074
Download
0
Embed Size (px)
Citation preview
(さっさ調べた)
AppArmorの話
AppArmor の話
•パスベースの強制アクセス制御機能
• Linux Kernel に組み込み済み
• LSMを利用
• Enforcing モード と Complain モード • Enforcing: 強制アクセス制御を行う
• Complain: 学習モード(Permissive みたいなやつ)
• Profile を定義していないものは管理対象外
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 以下のコンテンツを表示するみたいな感じ
AppArmor 状態
• apparmor_status or aa-status
• ps –eZ するとラベル?が見える
• Undefined は管理対象外
•設定ファイル: /etc/apparmor.d/*
よくある問題
• bind slave の zone ファイルが作成されない
• bind のログディレクトリ変えたらログが書けない
•設定ファイルに書いて解決するか
•コマンドで何とかする
•簡単!
おかしいな?と思ったら
• 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
よく使うコマンド
• apparmor_status
• apparmor_parser
• aa-*
• aa-* 系は apparmor-utils が必要
無効化方法
• sudo invoke-rc.d apparmor stop
• sudo update-rc.d -f apparmor remove
• sudo shutdown –r 0
• でいけるらしい!
• Profile 毎に無効化することも可能
有効化方法
• sudo invoke-rc.d apparmor start
• sudo update-rc.d apparmor start 37 S .
参考URL
• http://help.ubuntu.com/community/AppArmor