Reversão da linha de log do AppArmor para a regra

3

Estou procurando uma maneira de reverter facilmente uma única linha de /var/log/syslog informada pelo AppArmor para um perfil no modo de reclamação. Eu vi isso usando aa-genprof que usa o que é reportado ao syslog para ajudar a gerar regras. Na maioria das vezes, pude escrever minhas regras para permitir o que é necessário, mas agora estou preso a essas duas linhas do meu syslog:

[88529.103991] audit: type=1400 audit(1414408592.500:5298): apparmor="ALLOWED" operation="mount" info="failed type match" error=-13 profile="docker-das" name="/var/lib/docker/btrfs/" pid=9289 comm="docker" srcname="/var/lib/docker/btrfs/" flags="rw, bind"

[88529.104010] audit: type=1400 audit(1414408592.500:5299): apparmor="ALLOWED" operation="mount" info="failed type match" error=-13 profile="docker-das" name="/var/lib/docker/btrfs/" pid=9289 comm="docker" flags="rw, private"

Eu tentei adicionar a seguinte linha (e várias variantes enquanto mexia) ao meu perfil docker-das , mas sem sucesso:

mount fstype=btrfs -> /var/lib/docker/btrfs/

A única razão pela qual eu posso ver que isso não funcionaria é que comm é igual a docker em oposição a mount (que é quando se usa comandos de montagem nativos).

Infelizmente, não consigo obter aa-genprof de ajuda (acredito que o perfil não tenha um nome padrão) e a documentação do AppArmor (embora seja útil agora que encontrei a página correta em seu wiki) é uma bagunça.

Se há uma maneira fácil de gerar a linha necessária, então seria um grande conhecimento ter, caso contrário, alguém pode ver o que está errado com a regra ou descobrir qual regra eu preciso para permitir as montagens mostradas nos logs. O que eu gostaria é ter a correspondência mais strong para uma linha de log para que eu possa decidir quais partes não são necessárias.

    
por flungo 27.10.2014 / 12:41

1 resposta

0

Embora não seja uma solução completa (não é possível gerar uma regra de correspondência a partir de qualquer linha de log), a seguinte é a melhor solução que eu poderia criar para o problema específico e deve ser segura o suficiente:

deny mount /dev/**,
mount -> /var/lib/docker/btrfs/

Mas ainda seria bom poder obter a correspondência mais strong possível para a entrada de log para que eu possa usá-la ou torná-la mais fraca (se eu desejar).

    
por 27.10.2014 / 14:17