AppArmor – реализация модуля безопасности в Linux системах по управлению доступом на основе имен. Программа определяет, с какими системными ресурсами может взаимодействовать то или иное приложение. В ней по умолчанию имеется набор стандартных профилей, а также инструменты для создания новых.
AppArmor загружается по умолчанию. Определенные пакеты устанавливаются со своими собственными профилями, дополнительные профили находятся в пакете apparmor-profiles.
Чтобы установить пакет apparmor-profiles, пропишите в терминале
sudo apt-get install apparmor-profiles
Существует два режима выполнения профилей AppАrmor:
- фиксация/обучение – разрешаются нарушения профиля и сохраняются в журнале;
- предписание/ограничение – необходимо придерживаться политики профиля, нарушения также отмечаются в журнале.
Основные команды, которые используются для работы в AppArmor:
просмотр текущего статуса AppArmor
sudo apparmor_status
перевод профиля в режим обучения
sudo aa-complain /path/to/bin
перевод профиля в режим ограничений
sudo aa-enforce /path/to/bin
Профили AppArmor находятся в каталоге /etc/apparmor.d, который можно использовать для управления режимами профилей. Чтобы перевести все профили в режим обучения, нужно ввести
sudo aa-complain /etc/apparmor.d/*
Для перевода в режим ограничений используется команда
sudo aa-enforce /etc/apparmor.d/*
Чтобы загрузить профиль в ядро, прописываем
cat /etc/apparmor.d/app_profile | sudo apparmor_parser -a
Для выполнения перезагрузки
cat /etc/apparmor.d/app_profile | sudo apparmor_parser -r
Для перезагрузки всех профилей
sudo /etc/init.d/apparmor reload
Для отключения профиля может использоваться директория /etc/apparmor.d/disable вместе с опцией apparmor_paser -R
sudo ln -s /etc/apparmor.d/app_profile /etc/apparmor.d/disable/
sudo apparmor_parser -R /etc/apparmor.d/app_profile
Чтобы активировать отключенный профиль, необходимо вставить ссылку на него в /etc/apparmor.d/disable/, и выполнить загрузку с опцией –а
sudo rm /etc/apparmor.d/disable/app_profile
cat /etc/apparmor.d/app_profile | sudo apparmor_parser -a
Можно также отключить AppArmor, выгрузив модуль ядра командой
sudo /etc/init.d/apparmor stop
sudo update-rc.d -f apparmor remove
Для повторного запуска AppArmor нужно ввести
sudo /etc/init.d/apparmor start
sudo update-rc.d apparmor defaults
Хотите проработать эти команды на практике? Уметь создавать и обновлять профили в AppArmor? Записывайтесь на наш курс «L2-Security. Безопасность в Linux»!