Product SiteDocumentation Site

4.3. Ограниченные и Неограниченные Пользователи

Каждый пользователь Linux сопоставлен пользователю SELinux через политику SELinux. Это позволяет пользователям Linux наследовать ограничения пользователей SELinux. Это сопоставление пользователей Linux можно просмотреть выполнив команду semanage login -l от имени пользователя root:
# /usr/sbin/semanage login -l

Login Name                SELinux User              MLS/MCS Range

__default__               unconfined_u              s0-s0:c0.c1023
root                      unconfined_u              s0-s0:c0.c1023
system_u                  system_u                  s0-s0:c0.c1023
В Fedora 13, пользователи Linux сопоставлены логину SELinux __default__, который сопоставлен пользователю SELinux unconfined_u по умолчанию. Ниже определяется это сопоставление "по-умолчанию":
__default__               unconfined_u              s0-s0:c0.c1023
В следующем примере демонстрируется добавление нового пользователя Linux, и сопоставление пользователя Linux пользователю SELinux unconfined_u. Это подразумевает, что пользователь root работает неограниченно (unconfined), что установлено по умолчанию в Fedora 13:
  1. От имени пользователя root, выполним команду /usr/sbin/useradd newuser для создания нового пользователя Linux с именем newuser.
  2. От имени пользователя root, выполним команду passwd newuser для назначения пароля пользователю newuser:
    # passwd newuser
    Changing password for user newuser.
    New UNIX password: Enter a password 
    Retype new UNIX password: Enter the same password again 
    passwd: all authentication tokens updated successfully.
    
  3. Завершите сеанс текущей сессии, и выполните логин от имени пользователя newuser. После выполнения авторизации pam_selinux сопоставит пользователя Linux пользователю SELinux (в нашем случае unconfined_u), и установит результирующий контекст SELinux. Пользовательская оболочка (shell) запущена в этом же контексте. Выполните команду id -Z для просмотра контекста пользователя Linux:
    [newuser@localhost ~]$ id -Z
    unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
    
  4. Завершите сессию пользователя newuser, и зайдите с вашей учётной записью. Если Вам не нужен пользователь newuser, его можно удалить командой /usr/sbin/userdel -r newuser от имени пользователя root, вместе с домашним каталогом пользователя newsuer.
Ограниченные и неограниченные пользователи Linux - это субъекты для проверки на исполнение и запись в сегменты памяти, а также для ограничений политикой MCS (и MLS, если используется политика MLS). Если неограниченные пользователи Linux выполняют приложения, для которых SELinux определяет переход из неограниченного домена unconfined_t в ограниченный домен, то неограниченные польователи Linux являются субъектами для правил и ограничений в этом ограниченном домене. Преимущество безопасности в этом случае заключается в том, что хотя пользователь работает неограниченно, приложение остаётся ограниченным, и кроме того, использование утечек приложение может быть ограничено политикой. Примечание: данный механизм не защищает систему от пользователя. Вместо этого, пользователь и система защищены от возможных угроз, вызванных уязвимостями приложения.
Следующие ограниченнные пользователи SELinux существуют в Fedora 13:
Таблица 4.1. Возможности пользователей SELinux
Пользователь Домен X Window System su и sudo Выполнение в домашнем каталоге и /tmp/ Сетевые функции
guest_u guest_t нет нет опционально нет
xguest_u xguest_t да нет опционально только Firefox
user_u user_t да нет опционально да
staff_u staff_t да только sudo опционально да

По умолчанию, пользователи Linux в доменах guest_t и xguest_t не могут исполнять приложения в их домащних каталогах или /tmp/, предотвращая этим, запуск приложений (которые наследуют права пользователя) в директориях, на которые у них есть права записи. Это позволяет предотвратить от запуска и утечки подозрительных приложений или изменения файлов, которыми владеет пользователь.
По умолчанию, пользователи Linux в доменах user_t и staff_t могут выполнять приложения в их домашних каталогах и /tmp/. Дополнительная информация Раздел 6.6, «Булевы переключатели для пользователей, выполняющих приложения» о разрешении и запрещении исполнения приложения пользователями в домашних каталогах и /tmp/.