Я ищу способ легко отменить одну строку из /var/log/syslog
отчета AppArmor для профиля в режиме жалобы. Я видел, что при использовании aa-genprof
этого он использует то, что сообщается в syslog, чтобы помочь сгенерировать правила. По большей части мне удавалось вручную писать свои правила, чтобы разрешить то, что нужно, но теперь я застрял с этими двумя строками из моего syslog:
[88529.103991] аудит: тип=1400 аудит(1414408592.500:5298): apparmor="РАЗРЕШЕНО" операция="монтирование" информация="не удалось сопоставить тип" ошибка=-13 профиль="docker-das" имя="/var/lib/docker/btrfs/" pid=9289 comm="docker" srcname="/var/lib/docker/btrfs/" флаги="rw, bind"
[88529.104010] аудит: тип=1400 аудит(1414408592.500:5299): apparmor="РАЗРЕШЕНО" операция="монтирование" информация="не удалось сопоставить тип" ошибка=-13 профиль="docker-das" имя="/var/lib/docker/btrfs/" pid=9289 comm="docker" флаги="rw, private"
Я пробовал добавить следующую строку (и несколько вариантов по ходу дела) в свой docker-das
профиль, но безрезультатно:
mount fstype=btrfs -> /var/lib/docker/btrfs/
Единственная причина, по которой я вижу, что это не сработает, заключается в том, что это равнозначно comm
( что имеет место при использовании собственных команд монтирования).docker
mount
К сожалению, я не могу aa-genprof
ничем помочь (полагаю, из-за нестандартного имени профиля), а документация AppArmor (хотя и полезная, теперь, когда я нашел нужную страницу в их вики) — полный бардак.
Если есть простой способ сгенерировать требуемую строку, то это было бы здорово знать, в противном случае, может ли кто-нибудь увидеть, что не так с правилом или выяснить, какое правило мне нужно, чтобы разрешить монтировки, показанные в журналах. Я хотел бы иметь самое сильное соответствие для строки журнала, чтобы затем я мог решить, какие части не нужны.
решение1
Хотя это и не полное решение (оно не решает проблему генерации правила сопоставления из любой строки журнала), ниже приведено лучшее решение, которое я смог придумать для данной конкретной проблемы, и оно должно быть достаточно безопасным:
deny mount /dev/**,
mount -> /var/lib/docker/btrfs/
Но все равно было бы неплохо иметь возможность получить максимально сильное соответствие для записи журнала, чтобы я мог затем использовать его или сделать его слабее (если захочу).