← До фільтрів та технологій

← До списку лабораторних по Linux

Linux Лабораторна 61: Знайомство з AppArmor

Технологія: Linux

Номер лабораторної: 61 · Рівень: middle

Тема: AppArmor та базовий контроль доступу

Повний опис / сценарій лабораторної:

Мета: навчитися переглядати статус AppArmor, існуючі профілі та розуміти як вони впливають на роботу сервісів.



Крок 1. Перевірити чи увімкнено AppArmor у системі.

Команда: sudo aa-status

Пояснення: побачите кількість профілів у режимі enforcement та complain.



Крок 2. Подивитися список профілів які застосовані до служб.

Команда: sudo aa-status | sed -n "1,40p"

Пояснення: зверніть увагу які демони працюють під контролем AppArmor.



Крок 3. Знайти профіль для конкретного сервісу наприклад nginx або apache.

Команда: sudo aa-status | grep -i nginx || echo "нема nginx у профілях"

Пояснення: якщо сервіс присутній, ми зможемо дослідити його обмеження.



Крок 4. Переглянути текст профілю.

Команда: sudo grep -R "nginx" /etc/apparmor.d

Пояснення: відкрийте знайдений файл та подивіться які каталоги та системні виклики дозволено.



Крок 5. Перевести профіль у режим complain якщо це тестове середовище.

Команда: sudo aa-complain /etc/apparmor.d/імʼя_профілю

Пояснення: у цьому режимі порушення логуються, але не блокуються.



Крок 6. Виконати типову дію сервісу яка може порушити профіль.

Пояснення: наприклад спробувати звернутися до нетипового каталогу у конфігурації веб сервера.



Крок 7. Переглянути логи AppArmor.

Команда: sudo journalctl -k | grep -i apparmor | tail -n 20

Пояснення: знайдіть записи які відповідають вашій дії.



Крок 8. Повернути профіль у режим enforcement.

Команда: sudo aa-enforce /etc/apparmor.d/імʼя_профілю

Пояснення: тепер порушення знову блокуватимуться.



Крок 9. Перезапустити сервіс щоб переконатися що він працює коректно.

Команда: sudo systemctl restart імʼя_сервісу



Крок 10. Міні звіт.

Завдання: опишіть різницю між режимами complain та enforce і коли ви використовуватимете кожен з них.