web-dev-qa-db-ja.com

AppArmor-root:「プロファイルセットを読み取るのに十分な権限がありません。」

カスタムビルドのカーネルを使用して、リモートでホストされているXenサーバーでAppArmorを使用しようとしています。

AppArmorは実行されているようですが、正しくありません。たとえば、rootとして次のコマンドを実行した場合:

# aa-status
apparmor module is loaded.
You do not have enough privilege to read the profile set.

何が起こっているのか、どんなアイデアも役に立ちます。ありがとうございました!

これが私のカーネルオプションです:

# grep -i APPARMOR /boot/config-3.6.11-xen 
CONFIG_SECURITY_APPARMOR=y
CONFIG_SECURITY_APPARMOR_BOOTPARAM_VALUE=1
CONFIG_DEFAULT_SECURITY_APPARMOR=y
CONFIG_DEFAULT_SECURITY="apparmor"

appArmorが開始されたことを示すdmesg:

# dmesg | grep AppArmor
AppArmor: AppArmor initialized
AppArmor: AppArmor Filesystem Enabled

AppArmorは/ sysとそれに対応する値をフックします:

(注:/ sys/kernel/security/apparmor/profilesはありません)

# for x in $(find /sys -type f | grep apparmor) ; do echo -n "$x - "; cat $x ; done
/sys/kernel/security/apparmor/features/rlimit/mask - cpu fsize data stack core rss nproc nofile memlock as locks sigpending msgqueue Nice rtprio rttime
/sys/kernel/security/apparmor/features/capability - 0xffffff
/sys/kernel/security/apparmor/features/file/mask - create read write exec append mmap_exec link lock
/sys/kernel/security/apparmor/features/domain/change_profile - yes
/sys/kernel/security/apparmor/features/domain/change_onexec - yes
/sys/kernel/security/apparmor/features/domain/change_hatv - yes
/sys/kernel/security/apparmor/features/domain/change_hat - yes
/sys/kernel/security/apparmor/.remove - cat: /sys/kernel/security/apparmor/.remove: Invalid argument
/sys/kernel/security/apparmor/.replace - cat: /sys/kernel/security/apparmor/.replace: Invalid argument
/sys/kernel/security/apparmor/.load - cat: /sys/kernel/security/apparmor/.load: Invalid argument
/sys/module/apparmor/parameters/mode - enforce
/sys/module/apparmor/parameters/audit - normal
/sys/module/apparmor/parameters/debug - N
/sys/module/apparmor/parameters/paranoid_load - Y
/sys/module/apparmor/parameters/enabled - Y
/sys/module/apparmor/parameters/path_max - 8192
/sys/module/apparmor/parameters/logsyscall - N
/sys/module/apparmor/parameters/lock_policy - N
/sys/module/apparmor/parameters/audit_header - Y

私がインストールしたユーザーランドパッケージ:

# dpkg -l apparmor*
Version                                         Description
+++-===============================================-===============================================-==============================================================================================================
ii  apparmor                                        2.7.102-0ubuntu3.7                              User-space parser utility for AppArmor
ii  apparmor-notify                                 2.7.102-0ubuntu3.7                              AppArmor notification system
ii  apparmor-profiles                               2.7.102-0ubuntu3.7                              Profiles for AppArmor Security policies
ii  apparmor-utils                                  2.7.102-0ubuntu3.7                              Utilities for controlling AppArmor

繰り返しになりますが、ユーザーエラーなど、正しく動作しない理由がわからない場合はお知らせください。私が見る限り、それはそれのように見えますはず動作しています。

ご指導ありがとうございます。

4
neoCrimeLabs

私は同じ問題を抱えていました;)

  • 以下からapparmorパッケージをダウンロードするだけです: http://launchpad.net/apparmor/2.7/2.7.2/+download/apparmor-2.7.2.tar.gz

  • 次の場所に移動します:/apparmor-2.7.2/kernel-patches/3.1 <ここにカーネルのパッチがあります。心配しないでください-彼らは3.2.xバージョンで動作しています;)

  • カーネルにパッチを適用し、[AppArmor 2.4の互換性を有効にする]オプションを選択します(たとえば、make nconfig/make menuconfigから)。

  • コンパイルして、完全に機能するApparmorに満足してください

それが役に立てば幸い!

PS。私の英語が下手でごめんなさい-それは私の第一言語ではありません:)

2
Spoofy