AppArmor negando uma operação de montagem

9

Como convencer o apparmor a permitir esta operação?

[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"

Basicamente, estou tentando remontar o sistema de arquivos raiz somente leitura (em um espaço para nome de montagem aninhado em um contêiner LXC). A configuração é algumas montagens de ligação ao redor do local, terminando com:

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

Eu tentei todas as combinações de:

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

Eu poderia pensar. A adição da regra audit mount,mostra todas as outras montagens que eu faço, mas não as que operam em /. O mais próximo que posso chegar é mount -> /,qual IMHO está muito solto. Até mount / -> /,nega a remontagem (enquanto a primeira montagem de ligação é permitida).

Grzegorz Nosek
fonte
Você pode obter ajuda aqui: lists.ubuntu.com/mailman/listinfo/apparmor

Respostas:

2

Conforme: http://lwn.net/Articles/281157/

Os Binds têm as mesmas opções do original, portanto, você só pode montar uma cópia rw de / .. a menos que remonte todo o seu / para ro .. o que eu acho que você não quer fazer.

Precisa estar em duas etapas.

mount --bind /vital_data /untrusted_container/vital_data

mount -o remount,ro /untrusted_container/vital_data

Grizly
fonte
Na verdade, é exatamente isso que eu quero fazer. Todos os diretórios que precisam ser graváveis ​​(surpreendentemente poucos, btw) estão em outro sistema de arquivos. O único problema é que não consigo convencer o AppArmor a permitir essa operação específica.
Grzegorz Nosek
Hmm, talvez você pode simplesmente desativar apparmor
Grizly
1
Sim, eu posso desativar o AppArmor ou permitir a montagem de qualquer coisa em /, como mencionei na pergunta. Ainda assim, isso não me ajuda se eu realmente quiser me beneficiar do AppArmor.
Grzegorz Nosek
Você pode tentar NFS sourceforge.net/mailarchive/…
Grizly