Назад | Перейти на главную страницу

Зачем нам нужен SELinux?

Я не мог понять, где был использован SELinux и что он спасает от злоумышленников. Я просмотрел веб-сайт SELinux и прочитал основную информацию, но все еще не получил представления о SELinux. Для системы Linux, которая предоставляет оболочку SSH, интерфейс Apache, веб-приложение на основе ролей, базу данных MySQL, memcached, почти все системы защищены паролем, тогда зачем нам SELinux?

Вы можете рассматривать SELinux как брандмауэр системного вызова: Политика для каждого приложения определяет, что разумно делать для этого приложения: сервер имен может прослушивать порт 53, работать с некоторыми файлами зон в определенном каталоге, отправлять системный журнал, ..., но для него нет смысла попробуйте поработать, например, с файлами в / home. Применение SELinux такой политики означает, что уязвимости в сервере имен будет гораздо труднее распространиться на другие части системы.

Я считаю, что SELinux обеспечивает реальную безопасность. Но хотя с годами с ней, безусловно, стало легче работать, это, к сожалению, все еще довольно сложная система. Хорошо то, что вы можете легко отключить его для некоторых служб, не выключая для всей системы. Слишком много (младших?) Системных администраторов повсеместно переключают SELinux, как только сталкиваются с малейшей проблемой с одной службой, вместо того, чтобы выборочно отключать ее для службы, вызывающей проблемы.

Не все проблемы безопасности можно предсказать заранее. Если злоумышленнику удастся использовать уязвимость, например, в сторонний модуль httpd, то они имеют доступ к тем же файлам, что и пользователь httpd. SELinux дополнительно ограничивает это, ограничивая их действиями и контекстами файлов, к которым имеет доступ их домен SELinux.

Я думаю термин Обязательный контроль доступа резюмирует довольно хорошо. SELinux дает вам более безопасную систему за счет более безопасного ядра, во многом благодаря реализации MAC.

SELinux хорошо раскрывает всю сложность всей системы Linux.
Интересным аспектом безопасности является вопрос «что он делает?»
Хорошо, если это работает, вы никогда не узнаете. Если у вас запущен веб-сервер, и он только что не работал, то вы могли не знать, что против вашей системы даже применялась пара эксплойтов.
Что касается частных компаний, я не знаю. Если им нужна целостность, которую SELinux привносит в таблицу, то они должны это сделать.
Что касается правительства, то есть общедоступные источники (список государственных проектов и т.п.), которые, кажется, указывают на то, что MAC используется, и, возможно, довольно активно. Государственные системы, в зависимости от развертывания и того, какая информация в системе хранится, должны соответствовать определенным критериям перед использованием.
В конце концов, безопасность - это действительно управление рисками и выбор правильного уровня усилий.
Также безопасность - это постоянные усилия, а не то, что вы просто включаете.