Linux Labs

Безопасность сервера / Ступень 8 из 10

AppArmor: когда доступ запрещает профиль

Не запущена Запускается обычно ~20 с
Выйти из урока

Шаг 1 из 5 · на машине · 7 мин

Права верные, а доступа нет

Чему научишься

  • Находить отказ AppArmor в журнале ядра по строке apparmor="DENIED" и читать, что и кому запрещено.
  • Различать режимы профиля enforce и complain и переключать их командами aa-enforce и aa-complain.
  • Дополнять профиль нужным путём через /etc/apparmor.d/local и apparmor_parser -r, оставляя его в enforce.

Служба справки lab-docs отдаёт страницы из /srv/docs. Файлы на месте и права на них обычные, но по сети служба отвечает отказом. Запусти запрос и посмотри права каталога.

Упражнение · посмотреть

Запусти запрос к lab-docs

Запроси у lab-docs страницу index.html, посмотри права каталога /srv/docs и загляни в журнал ядра за отказами apparmor.

Сначала предположи

Права на /srv/docs/index.html обычные (644, читается всеми). Что служба ответит на запрос страницы?

Теперь начни упражнение, выполни команду и сверь прогноз с выводом.

Войти и начать Машина доступна после входа
Проверь себя 1 вопрос

Права на /srv/docs/index.html обычные (644), но служба получила Permission denied. Что известно точно?

  • Файл есть: ls -l /srv/docs/index.html показывает его с правами 644. Ответ был «Permission denied», а не «нет файла».

  • Служба отвечает — запрос до неё дошёл и вернул текст отказа. systemctl is-active lab-docs покажет active.

  • Файл читается всеми (644), от кого бы ни шла служба. Отказ дал AppArmor — строка apparmor="DENIED" в journalctl -k.

Права на файл верные, поэтому отказ дал не доступ к файлу, а профиль AppArmor.

Ubuntu 24.04
Загрузка…