Домашняя » как » Как создать профили AppArmor для блокировки программ в Ubuntu

    Как создать профили AppArmor для блокировки программ в Ubuntu

    AppArmor блокирует программы в вашей системе Ubuntu, предоставляя им только те разрешения, которые требуются при обычном использовании - особенно полезно для серверного программного обеспечения, которое может быть взломано. AppArmor включает в себя простые инструменты, которые вы можете использовать для блокировки других приложений.

    AppArmor по умолчанию включен в Ubuntu и некоторые другие дистрибутивы Linux. Ubuntu поставляет AppArmor с несколькими профилями, но вы также можете создавать свои собственные профили AppArmor. Утилиты AppArmor могут контролировать выполнение программы и помочь вам создать профиль.

    Перед созданием своего собственного профиля для приложения вы можете проверить пакет apparmor-profile в репозиториях Ubuntu, чтобы узнать, существует ли уже профиль для приложения, которое вы хотите ограничить..

    Создать и запустить план тестирования

    Вам нужно будет запустить программу, пока AppArmor наблюдает за ней, и пройтись по всем ее обычным функциям. По сути, вы должны использовать программу так, как она будет использоваться при обычном использовании: запустить программу, остановить ее, перезагрузить и использовать все ее функции. Вы должны разработать план тестирования, который включает функции, которые должна выполнять программа.

    Перед выполнением плана тестирования запустите терминал и выполните следующие команды для установки и запуска aa-genprof:

    sudo apt-get установить apparmor-utils

    sudo aa-genprof / путь / к / двоичный

    Оставьте aa-genprof работающим в терминале, запустите программу и выполните план тестирования, который вы разработали выше. Чем полнее ваш план тестирования, тем меньше проблем вы столкнетесь позже.

    По завершении выполнения плана тестирования вернитесь к терминалу и нажмите S ключ для сканирования системного журнала на наличие событий AppArmor.

    Для каждого события вам будет предложено выбрать действие. Например, ниже мы видим, что / usr / bin / man, который мы профилировали, выполнил / usr / bin / tbl. Мы можем выбрать, должен ли / usr / bin / tbl наследовать настройки безопасности / usr / bin / man, должен ли он работать со своим собственным профилем AppArmor, или он должен работать в неограниченном режиме.

    Для некоторых других действий вы увидите другие подсказки - здесь мы разрешаем доступ к / dev / tty, устройству, которое представляет терминал

    В конце процесса вам будет предложено сохранить новый профиль AppArmor..

    Включение режима жалоб и настройка профиля

    После создания профиля переведите его в «режим жалоб», где AppArmor не ограничивает действия, которые он может выполнять, а вместо этого регистрирует любые ограничения, которые могли бы возникнуть в противном случае:

    sudo аа-жалоба / путь / к / двоичный

    Какое-то время пользуйтесь этой программой. После обычного использования в режиме жалоб выполните следующую команду, чтобы проверить системные журналы на наличие ошибок и обновить профиль:

    sudo aa-logprof

    Использование Enforce Mode для блокировки приложения

    После того, как вы закончили настройку своего профиля AppArmor, включите «принудительный режим», чтобы заблокировать приложение:

    sudo -aaceforce / path / to / binary

    Вы можете запустить sudo aa-logprof команда в будущем настроить свой профиль.


    Профили AppArmor представляют собой обычные текстовые файлы, поэтому вы можете открыть их в текстовом редакторе и настроить вручную. Тем не менее, приведенные выше утилиты проведут вас через процесс.