マウント操作を拒否するAppArmor


9

この操作を許可するようにapparmorを説得するにはどうすればよいですか?

[28763.284171] type=1400 audit(1344273461.387:192): apparmor="DENIED"
operation="mount" info="failed type match" error=-13 parent=7101
profile="lxc-container-with-nesting" name="/" pid=7112 comm="su"
flags="ro, remount, bind"

基本的に、ルートファイルシステムを読み取り専用で再マウントしようとしています(LXCコンテナーにネストされたマウント名前空間に)。セットアップは、次で終わる場所の周りのいくつかのバインドマウントです。

mount --rbind / /
mount -o remount,ro /

私は次のすべての組み合わせを試しました:

mount options=(ro, remount, bind) / -> /,

と思いました。ルールaudit mount,を追加すると、他のすべてのマウントが表示されますが、/で動作しているマウントは表示されません。私が得ることができる最も近いものはmount -> /,、私見が緩すぎるということです。mount / -> /,再マウントも拒否します(最初のバインドマウントは許可されます)。


あなたはここで助けを得るかもしれません:lists.ubuntu.com/mailman/listinfo/apparmor

回答:


2

による:http : //lwn.net/Articles/281157/

バインドには元のオプションと同じオプションがあるため、/全体をroに再マウントしない限り、/ ..のrwコピーをバインドマウントすることしかできません。

2つのステップである必要があります。

mount --bind /vital_data /untrusted_container/vital_data

mount -o remount,ro /untrusted_container/vital_data


実際、それまさに私がやりたいことです。書き込み可能である必要があるすべてのディレクトリ(驚くほど少数)が別のファイルシステムにあります。唯一の問題は、この特定の操作を許可するようにAppArmorを説得できないことです。
Grzegorz Nosek 2013

うーん、おそらくapparmorを無効にできます
Grizly

1
ええ、質問で述べたように、AppArmorを無効にするか、/へのマウントを許可することができます。それでも、私が実際にAppArmorから利益を得たいと思っているのなら、それは私を助けません。
Grzegorz Nosek 2013

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.