[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"question-linux-chto-takoe-selinux-i-apparmor":3},{"id":4,"slug":5,"topicId":6,"topicSlug":7,"topicName":8,"topicEmoji":9,"question":10,"answer":11,"codeLang":12,"codeSrc":12,"important":12,"commonMistakes":12,"modernUsage":12,"difficulty":13,"tags":14,"related":15,"progress":16,"seo":17},742,"chto-takoe-selinux-i-apparmor",18,"linux","Linux","🐧","Что такое SELinux и AppArmor?","SELinux и AppArmor — системы мандатного контроля доступа (MAC — Mandatory Access Control), обеспечивающие дополнительный уровень безопасности поверх стандартных прав доступа Linux (DAC).\n\n> Аналогия из жизни: стандартные права (rwx) — это замок на двери офиса. MAC-система — это пропускная система на входе в здание, которая контролирует, какие сотрудники в какие помещения могут заходить, даже если у них есть ключ от двери.\n\n### Зачем нужны\n\nСтандартные права (rwx) защищают файлы от других пользователей, но если приложение запущено от root и скомпрометировано, злоумышленник получает полный доступ. MAC-системы ограничивают даже root.\n\n### Сравнение SELinux и AppArmor\n\n| Характеристика | SELinux | AppArmor |\n|---|---|---|\n| Разработчик | NSA и Red Hat | Canonical (Novell\u002FSUSE) |\n| Подход | Метки (контексты безопасности) | Профили на основе путей |\n| Сложность | Высокая | Средняя |\n| Гибкость | Очень высокая | Достаточная для большинства задач |\n| Дистрибутивы | RHEL, CentOS, Fedora | Ubuntu, SUSE |\n| Изучение | Сложное | Относительно простое |\n\n### SELinux (Security-Enhanced Linux)\n\nРежимы работы:\n- Enforcing — правила применяются, нарушения блокируются и логируются\n- Permissive — правила не применяются, но нарушения логируются (для отладки)\n- Disabled — SELinux выключен\n\n```bash\n# Проверить статус (на RHEL\u002FCentOS)\ngetenforce\nsestatus\n```\n\n### AppArmor (в Ubuntu 24.04)\n\nРаботает на основе профилей, привязанных к путям файлов:\n- Enforce — правила применяются\n- Complain — нарушения логируются, но не блокируются\n\n```bash\nsudo aa-status                        # Проверить статус\nsudo aa-complain \u002Fusr\u002Fsbin\u002Fnginx      # Режим complain (для отладки)\nsudo aa-enforce \u002Fusr\u002Fsbin\u002Fnginx       # Режим enforce\nls \u002Fetc\u002Fapparmor.d\u002F                   # Профили хранятся здесь\n```\n\n### Для Java-разработчика\n\nЕсли приложение на сервере не может открыть файл или порт, и стандартные права в порядке — проверьте AppArmor (Ubuntu) или SELinux (RHEL). Это частая причина ошибок «Permission denied» при развёртывании.\n\n> **На собеседовании:** достаточно знать, что MAC-системы существуют и зачем нужны. Интервьюер оценит, если вы упомянете AppArmor\u002FSELinux как одну из причин «Permission denied» при деплое. Частая ошибка — отключать SELinux\u002FAppArmor вместо правильной настройки профилей.","","middle",[7],[],null,{"title":18,"description":19,"ogTitle":18,"ogDescription":20,"keywords":21,"schemaAnswer":22,"featuredSnippetReady":23},"Что такое SELinux и AppArmor? — Gymterview","SELinux и AppArmor — системы мандатного контроля доступа (MAC — Mandatory Access Control), обеспечивающие дополнительный уровень безопасности поверх стандартных","SELinux и AppArmor — системы мандатного контроля доступа (MAC — Mandatory Access Control), обеспечивающие дополнительный",[7,13],"SELinux и AppArmor — системы мандатного контроля доступа (MAC — Mandatory Access Control), обеспечивающие дополнительный уровень безопасности поверх стандартных прав доступа Linux (DAC).",true]